PythonLinux命令

一.Linux常用基礎(chǔ)命令

1.tree命令:以樹狀形式查看指定目錄內(nèi)容(只能查看目錄內(nèi)容知押,不能查看文件內(nèi)容)

tree --以樹形結(jié)構(gòu)顯示當(dāng)前目錄下的文件信息
tree 目錄 --樹形結(jié)構(gòu)顯示指定目錄下的文件信息

2.clear :清屏操作

3.ls :查看當(dāng)前文件夾下的內(nèi)容

#1)使用方法
ls--顯示當(dāng)前目錄下文件信息
ls 目錄或文件名 --顯示指定目錄下文件信息
#2)相關(guān)參數(shù)
-a:顯示指定目錄下所有子目錄與文件数初,包含隱藏文件
-R:遞歸方式列出所有目錄中的內(nèi)容
-h:配合-l以人性的方式顯示文件大小
-l:以列表方式顯示文件的詳細(xì)信息
#3)文件類型(根據(jù)第一個(gè)字符判斷)
-: 普通文件
d : 目錄
l : 符號鏈接,相當(dāng)于windows中的快捷方式
s : 套接字
p : 管道
b : 塊設(shè)備
c : 字符設(shè)備
#4)用戶的操作權(quán)限(2-10個(gè)字符)
其他人對文件的操作權(quán)限(8蝙茶,9叁执,10個(gè)字符)
文件所有者對文件的操作權(quán)限(2,3蚁阳,4個(gè)字符)
文件所屬組用戶對文件的操作權(quán)限(5,6鸽照,7個(gè)字符)
#5)參數(shù)之間結(jié)合使用:
ls -la:列出當(dāng)前目錄下所有文件的相關(guān)信息螺捐,包括隱藏文件
ls-ltr:列出當(dāng)前目錄下的文件,按照時(shí)間逆向排序
#6)通配符
*:表示0個(gè)或多個(gè)字符
?:表示任一字符
[a-z]:表示a-zde任一字符矮燎,若是0-9表示任一數(shù)字字符
[abcd]:表示a|b|c|d任一字母

4.cd 切換目錄定血,命令使用方式:cd+路徑


# 1)切換到家目錄 
cd
cd ~
cd /home
cd $HOME
# 2)回到上次目錄
cd -

5.pwd:查看用戶當(dāng)前所處的工作目錄

6.which:顯示命令所在的目錄

7.touch:如果文件存在,更新文件的最后修改時(shí)間诞外,如果文件不存在澜沟,創(chuàng)建新文件(touch文件名)

8.mkdir:創(chuàng)建文件夾(mkdir -p aa/bb/cc 創(chuàng)建多級目錄)

9.rmdir:只能刪除空文件夾

10.rm:刪除文件


-r 刪除目錄名 
-i 提示用戶是否刪除文件或目錄
-f強(qiáng)制刪除()以此刪除的文件或目錄不會(huì)放入回收站中,數(shù)據(jù)不易恢復(fù)

11.cp源目錄或文件 目錄或文件(若有目錄拷貝需要用-r 參數(shù); 用-a參數(shù)峡谊,可以保留被拷貝文件的一些屬性信息 )


cp  要拷貝的文件(file1) file(不存在)茫虽;   創(chuàng)建file, 將file1中的內(nèi)容拷貝到file
cp file1 file(存在); file1 覆蓋 file
cp file dir(存在)既们;拷貝file 到 dir 目錄
cp - r dir(存在) dir1(存在)濒析; 將dir (包含)目錄拷貝到dir1目錄中
cp - r dir (存在) dir1(不存在); 創(chuàng)建dir1, 將dir (不包含)中的內(nèi)容拷貝到dir1中

12.mv改名或者移動(dòng)文件(mv file1 file2)


#1).改名
mv file(存在) file1(不存在)
mv dir(存在) dir1(不存在)
mv file(存在) file2(存在):file文件覆蓋file2文件啥纸,file 改名為file2
#2).移動(dòng)
mv file(文件) dir(存在的目錄):將file 文件移動(dòng)到dir中
mv fir(目錄存在) dir1(目錄存在):將dir移動(dòng)到dir1中号杏,dir就會(huì)作為dir1的子目錄而存在

13.cat(查看):將文件內(nèi)容一次性輸出到終端,使用方式 cat 文件名脾拆,缺點(diǎn):終端顯示的內(nèi)容有限馒索,如果文件太長無法全部顯示

14.more:將文件內(nèi)容顯示到終端,但是只能一直向下瀏覽名船,不能回退绰上,使用方式 more 文件名


顯示下一行:回車
顯示下一頁:空格
退出:q(ctrl+c)

15.less :文件內(nèi)容分頁顯示到終端,可以自由上下瀏覽渠驼。使用方式:less 文件名


顯示下一行:回車蜈块、ctrl+p胳赌、鍵盤向下鍵
顯示上一行:ctrl+n褪子、鍵盤向上鍵
顯示下一頁:空格、PageDown
顯示上一頁:PageUp
退出:q

16.head:從文件頭部開始查看前n行的內(nèi)容


#使用方式  如果沒有指定行數(shù)奕剃,默認(rèn)顯示前10行
head -n[行數(shù)] 文件名

17.tail:從文件尾部向上查看最后n行的內(nèi)容


#使用方式  如果沒有指定行數(shù)蜓席,默認(rèn)顯示最后10行內(nèi)容
tail -n[行數(shù)] 文件名

18.重定向


# 文件存在覆蓋
ls -l > text.log 2>&1
# 文件存在器一,在末尾追加
ls -l >> test.log 2>&1

19.管道:一個(gè)命令的輸出可以通過管道作為另一個(gè)管道的輸入(參數(shù))

20.軟連接


1) ln -s 文件名 快捷方式的名字
2) 目錄也可以創(chuàng)建軟連接
3) 注意事項(xiàng)
       <1>ln創(chuàng)建軟連接要用絕對路徑,因?yàn)槿绻皇褂媒^對路徑厨内,一旦這個(gè)連接文件發(fā)生位置變動(dòng)祈秕,就不能找到那個(gè)文件了
       <2>軟連接文件的大小是:路徑+文件名的總字節(jié)數(shù)

21.硬連接


1)ln 文件名 硬連接的名字
2)本質(zhì):不同文件名所在的inode節(jié)點(diǎn)是相同的渺贤,相同的inode節(jié)點(diǎn)指向了相同的數(shù)據(jù)塊,所以他們的文件內(nèi)容是一樣的请毛,文件內(nèi)容會(huì)同步
3)注意事項(xiàng)
        <1>不能建在目錄上
        <2>對絕對路徑?jīng)]有要求
        <3>不能跨文件系統(tǒng)
4)應(yīng)用場景
        <1>可以起到同步的作用(修改file的內(nèi)容志鞍,會(huì)在其余三個(gè)硬連接文件上同步)
        <2>可以起到保護(hù)文件的作用(刪除文件的時(shí)候,只要硬連接計(jì)數(shù)比不為0方仿,不會(huì)真正刪除)

22.wc:顯示文件行數(shù)固棚,字節(jié),單詞數(shù)


1) wc -l file 顯示文件的總行數(shù)
2) wc -c file 顯示文件的總字節(jié)數(shù)
3) wc -w file 顯示文件的總單詞數(shù)
4) wc file 顯示文件的總行數(shù)仙蚜,單詞數(shù)和總字節(jié)數(shù) 

23.whoami:顯示當(dāng)前登錄的用戶名

24.who:查看當(dāng)前所有登錄系統(tǒng)的用戶信息

25.shutdown | reboot | init


reboot:重啟系統(tǒng)
shutdown -r now:重啟系統(tǒng)此洲,shotdown會(huì)給別的用戶提示
shutdown -h now:立刻關(guān)機(jī)
shutdown -h 15:30:系統(tǒng)在今天的15:30會(huì)關(guān)機(jī)
shutdown -h + 10:再過十分后自動(dòng)關(guān)機(jī)
init 0: 關(guān)機(jī)

26.exit:退出當(dāng)前登錄的終端或者遠(yuǎn)程終端或者 su 切換的用戶

27.passwd:修改用戶密碼

28.sudo臨時(shí)獲得root權(quán)限(sudo 命令--會(huì)提示用戶輸入當(dāng)前用戶的密碼)

29.ssh


ssh要登錄的用戶名@ip, 然后提示輸入密碼

30. ftp


ftp ip,然后提示輸入用戶名和密碼,然后就登錄到了遠(yuǎn)程服務(wù)器上鳍征,get是下載黍翎, put是上傳文件
        例:ftp localhost-->密碼--->pwd-->cd day02-->get a03.txt  (下載)
        例:ftp localhost-->密碼--->pwd-->cd day02-->put 23.txt  (上傳)  

31.scp:遠(yuǎn)程拷貝文件,若拷貝目錄需要 -r 參數(shù)


1) scp -r mytest@ip:/home/mytest/.... 本地目錄
        例: scp python@localhost:/home/python/day02/a03.txt ./
2) scp -r filename 遠(yuǎn)程機(jī)器用戶@ip:路徑
          例:scp 23.txt python@localhost:/home/python/day02/

二.用戶權(quán)限艳丛、用戶、用戶組

1.chmod 修改文件權(quán)限


1) 文字設(shè)定法
命令:chmod [who] [+|-|=] [mode] 文件名
操作對象【who】
            u -- 用戶(user)
            g -- 同組用戶(group)
            o -- 其他用戶(other)
            a -- 所用用戶(all)【默認(rèn)】
操作符【+-=】
            + -- 添加權(quán)限
            - -- 取消權(quán)限
            = -- 賦予給定權(quán)限并取消其他權(quán)限
權(quán)限【mode】
            r -- 讀
            w -- 寫
            x -- 執(zhí)行
2)數(shù)字設(shè)定法
命令:chmod [+|-|=][mode] 文件名
操作符【+-=】
            + -- 添加權(quán)限
            - -- 取消權(quán)限
            = -- 賦予給定權(quán)限并取消其他權(quán)限 (默認(rèn)為=)
數(shù)字表示的含義
            0 -- 沒有權(quán)限(-)
            1 -- 執(zhí)行權(quán)限(x)
            2 -- 寫權(quán)限(w)
            4 -- 讀權(quán)限(r)

2.chown :修改文件所有者和所屬組


1) 修改文件所有者用法:chown 文件所有者 文件名
        sudo chown mytest file.txt
2) 修改文件所有者和所屬組用法:chown 文件所有者:文件所屬組 文件名
         sudo chown mytest:mytest file.txt

3.chgrp:修改文件所屬組


使用方法:chgrp 用戶組 文件或目錄
        sudo chgrp mytest file.txt

4.find


1)按文件名查詢 -name
            find 路徑 -name "文件名"
2)按文件類型查詢 -type
            find 路徑 -type 類型(普通類型用f表示而不是 -)
3) 按文件大小查詢 -size
        命令:find  路徑  -size  范圍
            范圍
                    大于:+表示 --  +100k
                    小于:-表示  --  -100k
                    等于: 不需要添加符號 --  100k
            大小
                    M 必須大寫(10M)
                    k 必須小寫(20k)
                    c 表示字節(jié)數(shù)
4)按文件日期
        創(chuàng)建日期:-ctime -n/+ n
                -n: n天以內(nèi)
                +n: n天以外
        修改日期:-mtime -n/+n
        訪問日期:-atime -n/+n
5) 高級查詢
        find ./ -type d -exec shell命令 {} \;
                 find ./ -type d -exec ls -l {} \;
        find ./ -type d -ok shell命令 {} \;
                find ./ -type d -exec ls -l {} \;
        find ./ -type d -ok shell命令 {} \;
                find ./ -type d -ok ls -l {} \;
                        ok比較安全, 特別是在執(zhí)行rm刪除文件的時(shí)候.
        find ./ -type d | xargs shell命令
                find ./ -type d | xargs ls -l

5. grep


l    grep -r(有目錄) “查找的內(nèi)容” 搜索的路徑
                -r參數(shù), 若是目錄, 則可以遞歸搜索
                -n參數(shù)可以顯示該查找內(nèi)容所在的行號
                -i參數(shù)可以忽略大小寫進(jìn)行查找
                -v參數(shù)不顯示含有某字符串
2    搜索當(dāng)前目錄下包含hello world字符串的文件
                grep -r -n "hello world" ./    ------顯示行號
                grep -r -i -n "HELLO world" ./  -------忽略大小小查找
3    先使用find命令查找文件, 然后使用grep命令查找哪些文件包含某個(gè)字符串
                find . -name "*.c" | xargs grep -n "main" 
              

6.壓縮工具


l    gzip和bzip2
         不能壓縮目錄趟紊,只能一個(gè)一個(gè)文件進(jìn)行壓縮氮双,壓縮之后會(huì)使原文件消失
             gzip *    壓縮當(dāng)前目錄下所有的文件, 但是目錄不能壓縮
             gunzip *  解壓當(dāng)前目錄下所有的.gz文件
             bzip2 *  壓縮當(dāng)前目錄下所有的文件, 但是目錄不能壓縮
             bunzip2 * 解壓當(dāng)前目錄下所有的. bz2文件
2    tar工具(*****)
         相關(guān)參數(shù)說明
             z:用gzip來壓縮/解壓縮文件
             j:用bzip2來壓縮/解壓縮文件
             c:create, 創(chuàng)建新的壓縮文件, 與x互斥使用
             x:從壓縮文件中釋放文件, 與c互斥使用
             v:詳細(xì)報(bào)告tar處理的文件信息
             f:指定壓縮文件的名字
             t: 查看壓縮包中有哪些文件
3    壓縮:
         tar cvf 壓縮包名字.tar 原材料[要打包壓縮的文件或目錄]
         tar zcvf 壓縮包名字.tar.gz 原材料[要打包壓縮的文件或目錄]
         tar jcvf 壓縮包名字.tar.bz2 原材料[要打包壓縮的文件或目錄]
4    解壓縮:
         tar  xvf  已有的壓縮包(test.tar.gz)tar
         tar  zxvf  已有的壓縮包(test.tar.gz)
         tar  jxvf  已有的壓縮包(test.tar.bz2)
         解壓到指定目錄:添加參數(shù) -C(大寫)
             tar zxvf test.tar.gz -C 解壓目錄(./mytest)
5    查看壓縮包中有哪些文件
         tar -tvf test.tar        
6    zip工具
         壓縮:zip -r 壓縮包名 要壓縮的文件(含文件或目錄)
             壓縮目錄需要使用參數(shù)-r
             使用該命令不需要指定壓縮包后綴
            zip -r xxx file dir ---生成xxx.zip文件
         解壓縮:unzip壓縮包名
             解壓縮到指定目錄:添加參數(shù) –d 解壓目錄
                 unzip xxx.zip -d /home/itcast/test/day1
            注意:解壓目錄若不存在則會(huì)創(chuàng)建.

7.軟件的安裝卸載


1.在線安裝
         軟件安裝:sudo apt-get install 軟件名
         軟件卸載:sudo apt-get remove 軟件名
         更新軟件列表:sudo apt-get update
         清理安裝包:sudo apt-get clean
             清理的是緩存路徑:/var/cache/apt/archives
2 軟件包安裝
         在Ubuntu系統(tǒng)下必須有deb格式的安裝包
         軟件安裝
             sudo dpkg -i xxx.deb
         軟件卸載
             sudo dpkg –r 軟件名

8.vim

1). 三種基本工作模式:命令模式、文本輸入模式霎匈、末行模式

2). 命令模式:用戶按下ESC鍵戴差, 就可以使vi進(jìn)入命令模式下

  • 保存退出
快捷鍵 操作
ZZ 保存退出
  • 代碼格式化
快捷鍵 操作
gg=G 代碼格式化
  • 光標(biāo)移動(dòng)
快捷鍵 操作
h 光標(biāo)左移
j 光標(biāo)下移
k 光標(biāo)上移
l 光標(biāo)右移
M 移動(dòng)光標(biāo)到中間行
gg 光標(biāo)移動(dòng)到文件開頭
G/L 光標(biāo)移動(dòng)到文件末尾的行首
O 光標(biāo)移到行首
$ 光標(biāo)移到行尾
nG 行跳轉(zhuǎn),例12G铛嘱,跳到12行處
  • 刪除命令
快捷鍵 操作
x 刪除光標(biāo)后一個(gè)字符暖释,相當(dāng)于Del
X 刪除光標(biāo)前一個(gè)字符,相當(dāng)于Backspace
dw 刪除光標(biāo)開始位置的字墨吓,包含光標(biāo)所在字符
D[d$] 刪除光標(biāo)后本行所有內(nèi)容球匕,包含光標(biāo)所在字符
dd 刪除光標(biāo)所在行(本質(zhì)其實(shí)是剪切)
ndd 從光標(biāo)當(dāng)前行向下刪除指定的行數(shù),如15dd
v/ctrl+v 使用h帖烘、j亮曹、k、l移動(dòng)選擇內(nèi)容秘症,然后按d刪除其中ctrl+v是列模式照卦,v為非列模式
  • 撤銷和反撤銷命令
快捷鍵 操作
u 一步一步撤銷,相當(dāng)于word文檔ctrl+z
ctrl-r 反撤銷乡摹,相當(dāng)于word文檔的ctrl+y
  • 復(fù)制粘貼
快捷鍵 操作
yy 復(fù)制當(dāng)前行
nyy 復(fù)制n行役耕,如10yy
p 在光標(biāo)所在位置向下新開辟一行,粘貼
P 在光標(biāo)所在位置向上新開辟一行聪廉,粘貼
剪切操作 按dd或者ndd刪除瞬痘,將刪除的行保存到剪貼板中故慈,然后按p/P就可以粘貼了
  • 可視模式
快捷鍵 操作
v/ctrl+v 使用h、j图云、k惯悠、l移動(dòng)選擇內(nèi)容;使用d刪除 使用y賦值 使用p粘貼到光標(biāo)的后面 使用P粘貼到光標(biāo)的前面
  • 替換操作
快捷鍵 操作
r 替換當(dāng)前字符
R 替換當(dāng)前行光標(biāo)后的字符
  • 文本移動(dòng)
快捷鍵 操作
>> 文本行右移
<< 文本行左移動(dòng)
  • 查找命令
快捷鍵 操作
/ /xxxx, 從光標(biāo)所在位置開始搜索竣况,按n向下搜索克婶,按N向上搜索
丹泉?xxxx, 從光標(biāo)所在的到位置開始搜索情萤,按n向上搜索,按N向下搜索

3). 文本輸入模式:從命令模式切換到文本輸入模式模式只需輸入如下命令:

快捷鍵 操作
i 在光標(biāo)前插入
a 在光標(biāo)后插入
I 在光標(biāo)所在行的行首插入
A 在光標(biāo)所在行的行尾插入
o 在光標(biāo)所在的行的下面新創(chuàng)建一行摹恨,行首插入
O 在光標(biāo)所在的行的上面新創(chuàng)建一行筋岛,行首插入
s 刪除光標(biāo)后邊的字符,從光標(biāo)當(dāng)前位置插入
S 刪除光標(biāo)所在當(dāng)前行晒哄,從行首插入
按列模式插入 先按ctrl+v進(jìn)入列模式睁宰,按hjkl移動(dòng)選定某列,按I或者shift+i 向前插入寝凌,然后插入字符柒傻,最后按兩次esc

4). 末行模式:從命令模式切換的末行模式,輸入冒號(:)

  • 保存退出
快捷鍵 操作
q 退出
q! 強(qiáng)制退出较木,不保存修改內(nèi)容
w 保存修改內(nèi)容红符,不退出
wq 保存并退出
x 相當(dāng)與wq
  • 替換操作
快捷鍵 操作
:s/old/new/ 光標(biāo)所在行的第一個(gè)old替換為new
:s/old/new/g 光標(biāo)所在行的所有old替換為new
:m, ns/old/new/g 將第m行至第n行之間的old全部替換成new
:%s/old/new/g 當(dāng)前文件的所有old替換為new
:1, $s/old/new/g 當(dāng)前文件愛你的所有old替換為new
:%s/old/new/gc 同上,但是每次替換需要用戶確認(rèn)

下面表格中old表示原字符串伐债,new表示新字符串

快捷鍵 操作
:s/old/new/ 光標(biāo)所在行的第一個(gè)old替換為new
:s/old/new/g 光標(biāo)所在行的所有old替換為new
:m, ns/old/new/g 將第m行至第n行之間的old全部替換成new
:%s/old/new/g 當(dāng)前文件的所有old替換為new
:1, $s/old/new/g 當(dāng)前文件愛你的所有old替換為new
:%s/old/new/gc 同上预侯,但是每次替換需要用戶確認(rèn)
  • 快速翻屏
快捷鍵 操作
ctr+u 向上翻半屏
ctrl+d 向下翻半屏
ctrl+f 向上翻一屏
ctrl+b 向后翻一屏

5). 分屏:在末行模式下執(zhí)行shell命令,峰锁!shell命令 按下兩次esc可以回到命令模式萎馅;從末行模式切換回命令模式,按兩次ESC,退格(backspace)或者回車鍵
* 在打開文件之后分屏

快捷鍵 操作
sp 當(dāng)前文件水平分屏
vsp 當(dāng)前文件垂直分屏
sp 文件名 當(dāng)前文件和另一個(gè)文件水平分屏
vsp 文件名 當(dāng)前文件和另一個(gè)文件垂直分屏
ctrl-w-w 在多個(gè)窗口切換光標(biāo)
wall/wqall/xall/qall/qall! 保存/保存退出/保存退出/退出/強(qiáng)制退出分屏窗口
  • 在打開文件之前分屏:
分屏: vim -on file1 file2...
垂直分屏: vim -On file1 file2 ...
注意 : n可以省略祖今,有幾個(gè)文件就分即屏

6).vim的配置文件

用戶級別配置文件
    ~/.vimrc, 修改用戶級別的配置文件只會(huì)影響當(dāng)前用戶, 不會(huì)影響其他的用戶.
    例如: 在用戶的家目錄下的.vimrc文件中添加
        set tabstop=4  ----設(shè)置縮進(jìn)4個(gè)空格
        set nu        ----設(shè)置行號
        set shiftwidth=4  ---設(shè)置gg=G縮進(jìn)4個(gè)空格, 默認(rèn)是縮進(jìn)8個(gè)空格
系統(tǒng)級別配置文件
    /etc/vim/vimrc, 修改了系統(tǒng)級別的配置文件將影響系統(tǒng)下的所有用戶.
    說明: 由于linux是多用戶操作系統(tǒng), 建議只在用戶級別的配置文件下進(jìn)行修改, 不要影響其他用戶.

一.Linux常用基礎(chǔ)命令

1.tree命令:以樹狀形式查看指定目錄內(nèi)容(只能查看目錄內(nèi)容校坑,不能查看文件內(nèi)容)

tree --以樹形結(jié)構(gòu)顯示當(dāng)前目錄下的文件信息
tree 目錄 --樹形結(jié)構(gòu)顯示指定目錄下的文件信息

2.clear :清屏操作

3.ls :查看當(dāng)前文件夾下的內(nèi)容

#1)使用方法
ls--顯示當(dāng)前目錄下文件信息
ls 目錄或文件名 --顯示指定目錄下文件信息
#2)相關(guān)參數(shù)
-a:顯示指定目錄下所有子目錄與文件,包含隱藏文件
-R:遞歸方式列出所有目錄中的內(nèi)容
-h:配合-l以人性的方式顯示文件大小
-l:以列表方式顯示文件的詳細(xì)信息
#3)文件類型(根據(jù)第一個(gè)字符判斷)
-: 普通文件
d : 目錄
l : 符號鏈接千诬,相當(dāng)于windows中的快捷方式
s : 套接字
p : 管道
b : 塊設(shè)備
c : 字符設(shè)備
#4)用戶的操作權(quán)限(2-10個(gè)字符)
其他人對文件的操作權(quán)限(8耍目,9,10個(gè)字符)
文件所有者對文件的操作權(quán)限(2徐绑,3邪驮,4個(gè)字符)
文件所屬組用戶對文件的操作權(quán)限(5,6傲茄,7個(gè)字符)
#5)參數(shù)之間結(jié)合使用:
ls -la:列出當(dāng)前目錄下所有文件的相關(guān)信息毅访,包括隱藏文件
ls-ltr:列出當(dāng)前目錄下的文件沮榜,按照時(shí)間逆向排序
#6)通配符
*:表示0個(gè)或多個(gè)字符
?:表示任一字符
[a-z]:表示a-zde任一字符,若是0-9表示任一數(shù)字字符
[abcd]:表示a|b|c|d任一字母

4.cd 切換目錄喻粹,命令使用方式:cd+路徑


# 1)切換到家目錄 
cd
cd ~
cd /home
cd $HOME
# 2)回到上次目錄
cd -

5.pwd:查看用戶當(dāng)前所處的工作目錄

6.which:顯示命令所在的目錄

7.touch:如果文件存在蟆融,更新文件的最后修改時(shí)間,如果文件不存在守呜,創(chuàng)建新文件(touch文件名)

8.mkdir:創(chuàng)建文件夾(mkdir -p aa/bb/cc 創(chuàng)建多級目錄)

9.rmdir:只能刪除空文件夾

10.rm:刪除文件


-r 刪除目錄名 
-i 提示用戶是否刪除文件或目錄
-f強(qiáng)制刪除()以此刪除的文件或目錄不會(huì)放入回收站中型酥,數(shù)據(jù)不易恢復(fù)

11.cp源目錄或文件 目錄或文件(若有目錄拷貝需要用-r 參數(shù); 用-a參數(shù),可以保留被拷貝文件的一些屬性信息 )


cp  要拷貝的文件(file1) file(不存在)查乒;   創(chuàng)建file, 將file1中的內(nèi)容拷貝到file
cp file1 file(存在)弥喉; file1 覆蓋 file
cp file dir(存在);拷貝file 到 dir 目錄
cp - r dir(存在) dir1(存在)玛迄; 將dir (包含)目錄拷貝到dir1目錄中
cp - r dir (存在) dir1(不存在)由境; 創(chuàng)建dir1, 將dir (不包含)中的內(nèi)容拷貝到dir1中

12.mv改名或者移動(dòng)文件(mv file1 file2)


#1).改名
mv file(存在) file1(不存在)
mv dir(存在) dir1(不存在)
mv file(存在) file2(存在):file文件覆蓋file2文件,file 改名為file2
#2).移動(dòng)
mv file(文件) dir(存在的目錄):將file 文件移動(dòng)到dir中
mv fir(目錄存在) dir1(目錄存在):將dir移動(dòng)到dir1中蓖议,dir就會(huì)作為dir1的子目錄而存在

13.cat(查看):將文件內(nèi)容一次性輸出到終端虏杰,使用方式 cat 文件名,缺點(diǎn):終端顯示的內(nèi)容有限勒虾,如果文件太長無法全部顯示

14.more:將文件內(nèi)容顯示到終端嘹屯,但是只能一直向下瀏覽,不能回退从撼,使用方式 more 文件名


顯示下一行:回車
顯示下一頁:空格
退出:q(ctrl+c)

15.less :文件內(nèi)容分頁顯示到終端,可以自由上下瀏覽钧栖。使用方式:less 文件名


顯示下一行:回車低零、ctrl+p、鍵盤向下鍵
顯示上一行:ctrl+n拯杠、鍵盤向上鍵
顯示下一頁:空格掏婶、PageDown
顯示上一頁:PageUp
退出:q

16.head:從文件頭部開始查看前n行的內(nèi)容


#使用方式  如果沒有指定行數(shù),默認(rèn)顯示前10行
head -n[行數(shù)] 文件名

17.tail:從文件尾部向上查看最后n行的內(nèi)容


#使用方式  如果沒有指定行數(shù)潭陪,默認(rèn)顯示最后10行內(nèi)容
tail -n[行數(shù)] 文件名

18.重定向


# 文件存在覆蓋
ls -l > text.log 2>&1
# 文件存在雄妥,在末尾追加
ls -l >> test.log 2>&1

19.管道:一個(gè)命令的輸出可以通過管道作為另一個(gè)管道的輸入(參數(shù))

20.軟連接


1) ln -s 文件名 快捷方式的名字
2) 目錄也可以創(chuàng)建軟連接
3) 注意事項(xiàng)
       <1>ln創(chuàng)建軟連接要用絕對路徑,因?yàn)槿绻皇褂媒^對路徑依溯,一旦這個(gè)連接文件發(fā)生位置變動(dòng)老厌,就不能找到那個(gè)文件了
       <2>軟連接文件的大小是:路徑+文件名的總字節(jié)數(shù)

21.硬連接


1)ln 文件名 硬連接的名字
2)本質(zhì):不同文件名所在的inode節(jié)點(diǎn)是相同的,相同的inode節(jié)點(diǎn)指向了相同的數(shù)據(jù)塊黎炉,所以他們的文件內(nèi)容是一樣的枝秤,文件內(nèi)容會(huì)同步
3)注意事項(xiàng)
        <1>不能建在目錄上
        <2>對絕對路徑?jīng)]有要求
        <3>不能跨文件系統(tǒng)
4)應(yīng)用場景
        <1>可以起到同步的作用(修改file的內(nèi)容,會(huì)在其余三個(gè)硬連接文件上同步)
        <2>可以起到保護(hù)文件的作用(刪除文件的時(shí)候慷嗜,只要硬連接計(jì)數(shù)比不為0淀弹,不會(huì)真正刪除)

22.wc:顯示文件行數(shù)丹壕,字節(jié),單詞數(shù)


1) wc -l file 顯示文件的總行數(shù)
2) wc -c file 顯示文件的總字節(jié)數(shù)
3) wc -w file 顯示文件的總單詞數(shù)
4) wc file 顯示文件的總行數(shù)薇溃,單詞數(shù)和總字節(jié)數(shù) 

23.whoami:顯示當(dāng)前登錄的用戶名

24.who:查看當(dāng)前所有登錄系統(tǒng)的用戶信息

25.shutdown | reboot | init


reboot:重啟系統(tǒng)
shutdown -r now:重啟系統(tǒng)菌赖,shotdown會(huì)給別的用戶提示
shutdown -h now:立刻關(guān)機(jī)
shutdown -h 15:30:系統(tǒng)在今天的15:30會(huì)關(guān)機(jī)
shutdown -h + 10:再過十分后自動(dòng)關(guān)機(jī)
init 0: 關(guān)機(jī)

26.exit:退出當(dāng)前登錄的終端或者遠(yuǎn)程終端或者 su 切換的用戶

27.passwd:修改用戶密碼

28.sudo臨時(shí)獲得root權(quán)限(sudo 命令--會(huì)提示用戶輸入當(dāng)前用戶的密碼)

29.ssh


ssh要登錄的用戶名@ip, 然后提示輸入密碼

30. ftp


ftp ip,然后提示輸入用戶名和密碼,然后就登錄到了遠(yuǎn)程服務(wù)器上沐序,get是下載琉用, put是上傳文件
        例:ftp localhost-->密碼--->pwd-->cd day02-->get a03.txt  (下載)
        例:ftp localhost-->密碼--->pwd-->cd day02-->put 23.txt  (上傳)  

31.scp:遠(yuǎn)程拷貝文件,若拷貝目錄需要 -r 參數(shù)


1) scp -r mytest@ip:/home/mytest/.... 本地目錄
        例: scp python@localhost:/home/python/day02/a03.txt ./
2) scp -r filename 遠(yuǎn)程機(jī)器用戶@ip:路徑
          例:scp 23.txt python@localhost:/home/python/day02/

二.用戶權(quán)限薄啥、用戶辕羽、用戶組

1.chmod 修改文件權(quán)限


1) 文字設(shè)定法
命令:chmod [who] [+|-|=] [mode] 文件名
操作對象【who】
            u -- 用戶(user)
            g -- 同組用戶(group)
            o -- 其他用戶(other)
            a -- 所用用戶(all)【默認(rèn)】
操作符【+-=】
            + -- 添加權(quán)限
            - -- 取消權(quán)限
            = -- 賦予給定權(quán)限并取消其他權(quán)限
權(quán)限【mode】
            r -- 讀
            w -- 寫
            x -- 執(zhí)行
2)數(shù)字設(shè)定法
命令:chmod [+|-|=][mode] 文件名
操作符【+-=】
            + -- 添加權(quán)限
            - -- 取消權(quán)限
            = -- 賦予給定權(quán)限并取消其他權(quán)限 (默認(rèn)為=)
數(shù)字表示的含義
            0 -- 沒有權(quán)限(-)
            1 -- 執(zhí)行權(quán)限(x)
            2 -- 寫權(quán)限(w)
            4 -- 讀權(quán)限(r)

2.chown :修改文件所有者和所屬組


1) 修改文件所有者用法:chown 文件所有者 文件名
        sudo chown mytest file.txt
2) 修改文件所有者和所屬組用法:chown 文件所有者:文件所屬組 文件名
         sudo chown mytest:mytest file.txt

3.chgrp:修改文件所屬組


使用方法:chgrp 用戶組 文件或目錄
        sudo chgrp mytest file.txt

4.find


1)按文件名查詢 -name
            find 路徑 -name "文件名"
2)按文件類型查詢 -type
            find 路徑 -type 類型(普通類型用f表示而不是 -)
3) 按文件大小查詢 -size
        命令:find  路徑  -size  范圍
            范圍
                    大于:+表示 --  +100k
                    小于:-表示  --  -100k
                    等于: 不需要添加符號 --  100k
            大小
                    M 必須大寫(10M)
                    k 必須小寫(20k)
                    c 表示字節(jié)數(shù)
4)按文件日期
        創(chuàng)建日期:-ctime -n/+ n
                -n: n天以內(nèi)
                +n: n天以外
        修改日期:-mtime -n/+n
        訪問日期:-atime -n/+n
5) 高級查詢
        find ./ -type d -exec shell命令 {} \;
                 find ./ -type d -exec ls -l {} \;
        find ./ -type d -ok shell命令 {} \;
                find ./ -type d -exec ls -l {} \;
        find ./ -type d -ok shell命令 {} \;
                find ./ -type d -ok ls -l {} \;
                        ok比較安全, 特別是在執(zhí)行rm刪除文件的時(shí)候.
        find ./ -type d | xargs shell命令
                find ./ -type d | xargs ls -l

5. grep


l    grep -r(有目錄) “查找的內(nèi)容” 搜索的路徑
                -r參數(shù), 若是目錄, 則可以遞歸搜索
                -n參數(shù)可以顯示該查找內(nèi)容所在的行號
                -i參數(shù)可以忽略大小寫進(jìn)行查找
                -v參數(shù)不顯示含有某字符串
2    搜索當(dāng)前目錄下包含hello world字符串的文件
                grep -r -n "hello world" ./    ------顯示行號
                grep -r -i -n "HELLO world" ./  -------忽略大小小查找
3    先使用find命令查找文件, 然后使用grep命令查找哪些文件包含某個(gè)字符串
                find . -name "*.c" | xargs grep -n "main" 
              

6.壓縮工具


l    gzip和bzip2
         不能壓縮目錄,只能一個(gè)一個(gè)文件進(jìn)行壓縮垄惧,壓縮之后會(huì)使原文件消失
             gzip *    壓縮當(dāng)前目錄下所有的文件, 但是目錄不能壓縮
             gunzip *  解壓當(dāng)前目錄下所有的.gz文件
             bzip2 *  壓縮當(dāng)前目錄下所有的文件, 但是目錄不能壓縮
             bunzip2 * 解壓當(dāng)前目錄下所有的. bz2文件
2    tar工具(*****)
         相關(guān)參數(shù)說明
             z:用gzip來壓縮/解壓縮文件
             j:用bzip2來壓縮/解壓縮文件
             c:create, 創(chuàng)建新的壓縮文件, 與x互斥使用
             x:從壓縮文件中釋放文件, 與c互斥使用
             v:詳細(xì)報(bào)告tar處理的文件信息
             f:指定壓縮文件的名字
             t: 查看壓縮包中有哪些文件
3    壓縮:
         tar cvf 壓縮包名字.tar 原材料[要打包壓縮的文件或目錄]
         tar zcvf 壓縮包名字.tar.gz 原材料[要打包壓縮的文件或目錄]
         tar jcvf 壓縮包名字.tar.bz2 原材料[要打包壓縮的文件或目錄]
4    解壓縮:
         tar  xvf  已有的壓縮包(test.tar.gz)tar
         tar  zxvf  已有的壓縮包(test.tar.gz)
         tar  jxvf  已有的壓縮包(test.tar.bz2)
         解壓到指定目錄:添加參數(shù) -C(大寫)
             tar zxvf test.tar.gz -C 解壓目錄(./mytest)
5    查看壓縮包中有哪些文件
         tar -tvf test.tar        
6    zip工具
         壓縮:zip -r 壓縮包名 要壓縮的文件(含文件或目錄)
             壓縮目錄需要使用參數(shù)-r
             使用該命令不需要指定壓縮包后綴
            zip -r xxx file dir ---生成xxx.zip文件
         解壓縮:unzip壓縮包名
             解壓縮到指定目錄:添加參數(shù) –d 解壓目錄
                 unzip xxx.zip -d /home/itcast/test/day1
            注意:解壓目錄若不存在則會(huì)創(chuàng)建.

7.軟件的安裝卸載


1.在線安裝
         軟件安裝:sudo apt-get install 軟件名
         軟件卸載:sudo apt-get remove 軟件名
         更新軟件列表:sudo apt-get update
         清理安裝包:sudo apt-get clean
             清理的是緩存路徑:/var/cache/apt/archives
2 軟件包安裝
         在Ubuntu系統(tǒng)下必須有deb格式的安裝包
         軟件安裝
             sudo dpkg -i xxx.deb
         軟件卸載
             sudo dpkg –r 軟件名

8.vim

1). 三種基本工作模式:命令模式刁愿、文本輸入模式、末行模式

2). 命令模式:用戶按下ESC鍵到逊, 就可以使vi進(jìn)入命令模式下

  • 保存退出
快捷鍵 操作
ZZ 保存退出
  • 代碼格式化
快捷鍵 操作
gg=G 代碼格式化
  • 光標(biāo)移動(dòng)
快捷鍵 操作
h 光標(biāo)左移
j 光標(biāo)下移
k 光標(biāo)上移
l 光標(biāo)右移
M 移動(dòng)光標(biāo)到中間行
gg 光標(biāo)移動(dòng)到文件開頭
G/L 光標(biāo)移動(dòng)到文件末尾的行首
O 光標(biāo)移到行首
$ 光標(biāo)移到行尾
nG 行跳轉(zhuǎn)铣口,例12G,跳到12行處
  • 刪除命令
快捷鍵 操作
x 刪除光標(biāo)后一個(gè)字符觉壶,相當(dāng)于Del
X 刪除光標(biāo)前一個(gè)字符脑题,相當(dāng)于Backspace
dw 刪除光標(biāo)開始位置的字,包含光標(biāo)所在字符
D[d$] 刪除光標(biāo)后本行所有內(nèi)容铜靶,包含光標(biāo)所在字符
dd 刪除光標(biāo)所在行(本質(zhì)其實(shí)是剪切)
ndd 從光標(biāo)當(dāng)前行向下刪除指定的行數(shù)叔遂,如15dd
v/ctrl+v 使用h、j争剿、k已艰、l移動(dòng)選擇內(nèi)容,然后按d刪除其中ctrl+v是列模式蚕苇,v為非列模式
  • 撤銷和反撤銷命令
快捷鍵 操作
u 一步一步撤銷哩掺,相當(dāng)于word文檔ctrl+z
ctrl-r 反撤銷,相當(dāng)于word文檔的ctrl+y
  • 復(fù)制粘貼
快捷鍵 操作
yy 復(fù)制當(dāng)前行
nyy 復(fù)制n行涩笤,如10yy
p 在光標(biāo)所在位置向下新開辟一行嚼吞,粘貼
P 在光標(biāo)所在位置向上新開辟一行,粘貼
剪切操作 按dd或者ndd刪除蹬碧,將刪除的行保存到剪貼板中舱禽,然后按p/P就可以粘貼了
  • 可視模式
快捷鍵 操作
v/ctrl+v 使用h、j锰茉、k呢蔫、l移動(dòng)選擇內(nèi)容;使用d刪除 使用y賦值 使用p粘貼到光標(biāo)的后面 使用P粘貼到光標(biāo)的前面
  • 替換操作
快捷鍵 操作
r 替換當(dāng)前字符
R 替換當(dāng)前行光標(biāo)后的字符
  • 文本移動(dòng)
快捷鍵 操作
>> 文本行右移
<< 文本行左移動(dòng)
  • 查找命令
快捷鍵 操作
/ /xxxx, 從光標(biāo)所在位置開始搜索,按n向下搜索片吊,按N向上搜索
绽昏? ?xxxx, 從光標(biāo)所在的到位置開始搜索俏脊,按n向上搜索全谤,按N向下搜索

3). 文本輸入模式:從命令模式切換到文本輸入模式模式只需輸入如下命令:

快捷鍵 操作
i 在光標(biāo)前插入
a 在光標(biāo)后插入
I 在光標(biāo)所在行的行首插入
A 在光標(biāo)所在行的行尾插入
o 在光標(biāo)所在的行的下面新創(chuàng)建一行,行首插入
O 在光標(biāo)所在的行的上面新創(chuàng)建一行爷贫,行首插入
s 刪除光標(biāo)后邊的字符认然,從光標(biāo)當(dāng)前位置插入
S 刪除光標(biāo)所在當(dāng)前行,從行首插入
按列模式插入 先按ctrl+v進(jìn)入列模式漫萄,按hjkl移動(dòng)選定某列卷员,按I或者shift+i 向前插入,然后插入字符腾务,最后按兩次esc

4). 末行模式:從命令模式切換的末行模式毕骡,輸入冒號(:)

  • 保存退出
快捷鍵 操作
q 退出
q! 強(qiáng)制退出,不保存修改內(nèi)容
w 保存修改內(nèi)容岩瘦,不退出
wq 保存并退出
x 相當(dāng)與wq
  • 替換操作
快捷鍵 操作
:s/old/new/ 光標(biāo)所在行的第一個(gè)old替換為new
:s/old/new/g 光標(biāo)所在行的所有old替換為new
:m, ns/old/new/g 將第m行至第n行之間的old全部替換成new
:%s/old/new/g 當(dāng)前文件的所有old替換為new
:1, $s/old/new/g 當(dāng)前文件愛你的所有old替換為new
:%s/old/new/gc 同上未巫,但是每次替換需要用戶確認(rèn)

下面表格中old表示原字符串,new表示新字符串

快捷鍵 操作
:s/old/new/ 光標(biāo)所在行的第一個(gè)old替換為new
:s/old/new/g 光標(biāo)所在行的所有old替換為new
:m, ns/old/new/g 將第m行至第n行之間的old全部替換成new
:%s/old/new/g 當(dāng)前文件的所有old替換為new
:1, $s/old/new/g 當(dāng)前文件愛你的所有old替換為new
:%s/old/new/gc 同上启昧,但是每次替換需要用戶確認(rèn)
  • 快速翻屏
快捷鍵 操作
ctr+u 向上翻半屏
ctrl+d 向下翻半屏
ctrl+f 向上翻一屏
ctrl+b 向后翻一屏

5). 分屏:在末行模式下執(zhí)行shell命令叙凡,!shell命令 按下兩次esc可以回到命令模式密末;從末行模式切換回命令模式蜘醋,按兩次ESC,退格(backspace)或者回車鍵
* 在打開文件之后分屏

快捷鍵 操作
sp 當(dāng)前文件水平分屏
vsp 當(dāng)前文件垂直分屏
sp 文件名 當(dāng)前文件和另一個(gè)文件水平分屏
vsp 文件名 當(dāng)前文件和另一個(gè)文件垂直分屏
ctrl-w-w 在多個(gè)窗口切換光標(biāo)
wall/wqall/xall/qall/qall! 保存/保存退出/保存退出/退出/強(qiáng)制退出分屏窗口
  • 在打開文件之前分屏:
分屏: vim -on file1 file2...
垂直分屏: vim -On file1 file2 ...
注意 : n可以省略激蹲,有幾個(gè)文件就分即屏

6).vim的配置文件

用戶級別配置文件
    ~/.vimrc, 修改用戶級別的配置文件只會(huì)影響當(dāng)前用戶, 不會(huì)影響其他的用戶.
    例如: 在用戶的家目錄下的.vimrc文件中添加
        set tabstop=4  ----設(shè)置縮進(jìn)4個(gè)空格
        set nu        ----設(shè)置行號
        set shiftwidth=4  ---設(shè)置gg=G縮進(jìn)4個(gè)空格, 默認(rèn)是縮進(jìn)8個(gè)空格
系統(tǒng)級別配置文件
    /etc/vim/vimrc, 修改了系統(tǒng)級別的配置文件將影響系統(tǒng)下的所有用戶.
    說明: 由于linux是多用戶操作系統(tǒng), 建議只在用戶級別的配置文件下進(jìn)行修改, 不要影響其他用戶.

一.Linux常用基礎(chǔ)命令

1.tree命令:以樹狀形式查看指定目錄內(nèi)容(只能查看目錄內(nèi)容升筏,不能查看文件內(nèi)容)

tree --以樹形結(jié)構(gòu)顯示當(dāng)前目錄下的文件信息
tree 目錄 --樹形結(jié)構(gòu)顯示指定目錄下的文件信息

2.clear :清屏操作

3.ls :查看當(dāng)前文件夾下的內(nèi)容

#1)使用方法
ls--顯示當(dāng)前目錄下文件信息
ls 目錄或文件名 --顯示指定目錄下文件信息
#2)相關(guān)參數(shù)
-a:顯示指定目錄下所有子目錄與文件隧甚,包含隱藏文件
-R:遞歸方式列出所有目錄中的內(nèi)容
-h:配合-l以人性的方式顯示文件大小
-l:以列表方式顯示文件的詳細(xì)信息
#3)文件類型(根據(jù)第一個(gè)字符判斷)
-: 普通文件
d : 目錄
l : 符號鏈接进苍,相當(dāng)于windows中的快捷方式
s : 套接字
p : 管道
b : 塊設(shè)備
c : 字符設(shè)備
#4)用戶的操作權(quán)限(2-10個(gè)字符)
其他人對文件的操作權(quán)限(8创夜,9授瘦,10個(gè)字符)
文件所有者對文件的操作權(quán)限(2谐区,3漓柑,4個(gè)字符)
文件所屬組用戶對文件的操作權(quán)限(5教硫,6,7個(gè)字符)
#5)參數(shù)之間結(jié)合使用:
ls -la:列出當(dāng)前目錄下所有文件的相關(guān)信息辆布,包括隱藏文件
ls-ltr:列出當(dāng)前目錄下的文件瞬矩,按照時(shí)間逆向排序
#6)通配符
*:表示0個(gè)或多個(gè)字符
?:表示任一字符
[a-z]:表示a-zde任一字符,若是0-9表示任一數(shù)字字符
[abcd]:表示a|b|c|d任一字母

4.cd 切換目錄锋玲,命令使用方式:cd+路徑


# 1)切換到家目錄 
cd
cd ~
cd /home
cd $HOME
# 2)回到上次目錄
cd -

5.pwd:查看用戶當(dāng)前所處的工作目錄

6.which:顯示命令所在的目錄

7.touch:如果文件存在景用,更新文件的最后修改時(shí)間,如果文件不存在,創(chuàng)建新文件(touch文件名)

8.mkdir:創(chuàng)建文件夾(mkdir -p aa/bb/cc 創(chuàng)建多級目錄)

9.rmdir:只能刪除空文件夾

10.rm:刪除文件


-r 刪除目錄名 
-i 提示用戶是否刪除文件或目錄
-f強(qiáng)制刪除()以此刪除的文件或目錄不會(huì)放入回收站中伞插,數(shù)據(jù)不易恢復(fù)

11.cp源目錄或文件 目錄或文件(若有目錄拷貝需要用-r 參數(shù); 用-a參數(shù)割粮,可以保留被拷貝文件的一些屬性信息 )


cp  要拷貝的文件(file1) file(不存在);   創(chuàng)建file, 將file1中的內(nèi)容拷貝到file
cp file1 file(存在)媚污; file1 覆蓋 file
cp file dir(存在)舀瓢;拷貝file 到 dir 目錄
cp - r dir(存在) dir1(存在); 將dir (包含)目錄拷貝到dir1目錄中
cp - r dir (存在) dir1(不存在)耗美; 創(chuàng)建dir1, 將dir (不包含)中的內(nèi)容拷貝到dir1中

12.mv改名或者移動(dòng)文件(mv file1 file2)


#1).改名
mv file(存在) file1(不存在)
mv dir(存在) dir1(不存在)
mv file(存在) file2(存在):file文件覆蓋file2文件京髓,file 改名為file2
#2).移動(dòng)
mv file(文件) dir(存在的目錄):將file 文件移動(dòng)到dir中
mv fir(目錄存在) dir1(目錄存在):將dir移動(dòng)到dir1中,dir就會(huì)作為dir1的子目錄而存在

13.cat(查看):將文件內(nèi)容一次性輸出到終端商架,使用方式 cat 文件名堰怨,缺點(diǎn):終端顯示的內(nèi)容有限,如果文件太長無法全部顯示

14.more:將文件內(nèi)容顯示到終端蛇摸,但是只能一直向下瀏覽备图,不能回退,使用方式 more 文件名


顯示下一行:回車
顯示下一頁:空格
退出:q(ctrl+c)

15.less :文件內(nèi)容分頁顯示到終端皇型,可以自由上下瀏覽诬烹。使用方式:less 文件名


顯示下一行:回車、ctrl+p弃鸦、鍵盤向下鍵
顯示上一行:ctrl+n绞吁、鍵盤向上鍵
顯示下一頁:空格、PageDown
顯示上一頁:PageUp
退出:q

16.head:從文件頭部開始查看前n行的內(nèi)容


#使用方式  如果沒有指定行數(shù)唬格,默認(rèn)顯示前10行
head -n[行數(shù)] 文件名

17.tail:從文件尾部向上查看最后n行的內(nèi)容


#使用方式  如果沒有指定行數(shù)家破,默認(rèn)顯示最后10行內(nèi)容
tail -n[行數(shù)] 文件名

18.重定向


# 文件存在覆蓋
ls -l > text.log 2>&1
# 文件存在,在末尾追加
ls -l >> test.log 2>&1

19.管道:一個(gè)命令的輸出可以通過管道作為另一個(gè)管道的輸入(參數(shù))

20.軟連接


1) ln -s 文件名 快捷方式的名字
2) 目錄也可以創(chuàng)建軟連接
3) 注意事項(xiàng)
       <1>ln創(chuàng)建軟連接要用絕對路徑购岗,因?yàn)槿绻皇褂媒^對路徑汰聋,一旦這個(gè)連接文件發(fā)生位置變動(dòng),就不能找到那個(gè)文件了
       <2>軟連接文件的大小是:路徑+文件名的總字節(jié)數(shù)

21.硬連接


1)ln 文件名 硬連接的名字
2)本質(zhì):不同文件名所在的inode節(jié)點(diǎn)是相同的喊积,相同的inode節(jié)點(diǎn)指向了相同的數(shù)據(jù)塊烹困,所以他們的文件內(nèi)容是一樣的,文件內(nèi)容會(huì)同步
3)注意事項(xiàng)
        <1>不能建在目錄上
        <2>對絕對路徑?jīng)]有要求
        <3>不能跨文件系統(tǒng)
4)應(yīng)用場景
        <1>可以起到同步的作用(修改file的內(nèi)容乾吻,會(huì)在其余三個(gè)硬連接文件上同步)
        <2>可以起到保護(hù)文件的作用(刪除文件的時(shí)候髓梅,只要硬連接計(jì)數(shù)比不為0,不會(huì)真正刪除)

22.wc:顯示文件行數(shù)绎签,字節(jié)枯饿,單詞數(shù)


1) wc -l file 顯示文件的總行數(shù)
2) wc -c file 顯示文件的總字節(jié)數(shù)
3) wc -w file 顯示文件的總單詞數(shù)
4) wc file 顯示文件的總行數(shù),單詞數(shù)和總字節(jié)數(shù) 

23.whoami:顯示當(dāng)前登錄的用戶名

24.who:查看當(dāng)前所有登錄系統(tǒng)的用戶信息

25.shutdown | reboot | init


reboot:重啟系統(tǒng)
shutdown -r now:重啟系統(tǒng)诡必,shotdown會(huì)給別的用戶提示
shutdown -h now:立刻關(guān)機(jī)
shutdown -h 15:30:系統(tǒng)在今天的15:30會(huì)關(guān)機(jī)
shutdown -h + 10:再過十分后自動(dòng)關(guān)機(jī)
init 0: 關(guān)機(jī)

26.exit:退出當(dāng)前登錄的終端或者遠(yuǎn)程終端或者 su 切換的用戶

27.passwd:修改用戶密碼

28.sudo臨時(shí)獲得root權(quán)限(sudo 命令--會(huì)提示用戶輸入當(dāng)前用戶的密碼)

29.ssh


ssh要登錄的用戶名@ip, 然后提示輸入密碼

30. ftp


ftp ip,然后提示輸入用戶名和密碼奢方,然后就登錄到了遠(yuǎn)程服務(wù)器上,get是下載, put是上傳文件
        例:ftp localhost-->密碼--->pwd-->cd day02-->get a03.txt  (下載)
        例:ftp localhost-->密碼--->pwd-->cd day02-->put 23.txt  (上傳)  

31.scp:遠(yuǎn)程拷貝文件蟋字,若拷貝目錄需要 -r 參數(shù)


1) scp -r mytest@ip:/home/mytest/.... 本地目錄
        例: scp python@localhost:/home/python/day02/a03.txt ./
2) scp -r filename 遠(yuǎn)程機(jī)器用戶@ip:路徑
          例:scp 23.txt python@localhost:/home/python/day02/

二.用戶權(quán)限稿蹲、用戶、用戶組

1.chmod 修改文件權(quán)限


1) 文字設(shè)定法
命令:chmod [who] [+|-|=] [mode] 文件名
操作對象【who】
            u -- 用戶(user)
            g -- 同組用戶(group)
            o -- 其他用戶(other)
            a -- 所用用戶(all)【默認(rèn)】
操作符【+-=】
            + -- 添加權(quán)限
            - -- 取消權(quán)限
            = -- 賦予給定權(quán)限并取消其他權(quán)限
權(quán)限【mode】
            r -- 讀
            w -- 寫
            x -- 執(zhí)行
2)數(shù)字設(shè)定法
命令:chmod [+|-|=][mode] 文件名
操作符【+-=】
            + -- 添加權(quán)限
            - -- 取消權(quán)限
            = -- 賦予給定權(quán)限并取消其他權(quán)限 (默認(rèn)為=)
數(shù)字表示的含義
            0 -- 沒有權(quán)限(-)
            1 -- 執(zhí)行權(quán)限(x)
            2 -- 寫權(quán)限(w)
            4 -- 讀權(quán)限(r)

2.chown :修改文件所有者和所屬組


1) 修改文件所有者用法:chown 文件所有者 文件名
        sudo chown mytest file.txt
2) 修改文件所有者和所屬組用法:chown 文件所有者:文件所屬組 文件名
         sudo chown mytest:mytest file.txt

3.chgrp:修改文件所屬組


使用方法:chgrp 用戶組 文件或目錄
        sudo chgrp mytest file.txt

4.find


1)按文件名查詢 -name
            find 路徑 -name "文件名"
2)按文件類型查詢 -type
            find 路徑 -type 類型(普通類型用f表示而不是 -)
3) 按文件大小查詢 -size
        命令:find  路徑  -size  范圍
            范圍
                    大于:+表示 --  +100k
                    小于:-表示  --  -100k
                    等于: 不需要添加符號 --  100k
            大小
                    M 必須大寫(10M)
                    k 必須小寫(20k)
                    c 表示字節(jié)數(shù)
4)按文件日期
        創(chuàng)建日期:-ctime -n/+ n
                -n: n天以內(nèi)
                +n: n天以外
        修改日期:-mtime -n/+n
        訪問日期:-atime -n/+n
5) 高級查詢
        find ./ -type d -exec shell命令 {} \;
                 find ./ -type d -exec ls -l {} \;
        find ./ -type d -ok shell命令 {} \;
                find ./ -type d -exec ls -l {} \;
        find ./ -type d -ok shell命令 {} \;
                find ./ -type d -ok ls -l {} \;
                        ok比較安全, 特別是在執(zhí)行rm刪除文件的時(shí)候.
        find ./ -type d | xargs shell命令
                find ./ -type d | xargs ls -l

5. grep


l    grep -r(有目錄) “查找的內(nèi)容” 搜索的路徑
                -r參數(shù), 若是目錄, 則可以遞歸搜索
                -n參數(shù)可以顯示該查找內(nèi)容所在的行號
                -i參數(shù)可以忽略大小寫進(jìn)行查找
                -v參數(shù)不顯示含有某字符串
2    搜索當(dāng)前目錄下包含hello world字符串的文件
                grep -r -n "hello world" ./    ------顯示行號
                grep -r -i -n "HELLO world" ./  -------忽略大小小查找
3    先使用find命令查找文件, 然后使用grep命令查找哪些文件包含某個(gè)字符串
                find . -name "*.c" | xargs grep -n "main" 
              

6.壓縮工具


l    gzip和bzip2
         不能壓縮目錄愉老,只能一個(gè)一個(gè)文件進(jìn)行壓縮场绿,壓縮之后會(huì)使原文件消失
             gzip *    壓縮當(dāng)前目錄下所有的文件, 但是目錄不能壓縮
             gunzip *  解壓當(dāng)前目錄下所有的.gz文件
             bzip2 *  壓縮當(dāng)前目錄下所有的文件, 但是目錄不能壓縮
             bunzip2 * 解壓當(dāng)前目錄下所有的. bz2文件
2    tar工具(*****)
         相關(guān)參數(shù)說明
             z:用gzip來壓縮/解壓縮文件
             j:用bzip2來壓縮/解壓縮文件
             c:create, 創(chuàng)建新的壓縮文件, 與x互斥使用
             x:從壓縮文件中釋放文件, 與c互斥使用
             v:詳細(xì)報(bào)告tar處理的文件信息
             f:指定壓縮文件的名字
             t: 查看壓縮包中有哪些文件
3    壓縮:
         tar cvf 壓縮包名字.tar 原材料[要打包壓縮的文件或目錄]
         tar zcvf 壓縮包名字.tar.gz 原材料[要打包壓縮的文件或目錄]
         tar jcvf 壓縮包名字.tar.bz2 原材料[要打包壓縮的文件或目錄]
4    解壓縮:
         tar  xvf  已有的壓縮包(test.tar.gz)tar
         tar  zxvf  已有的壓縮包(test.tar.gz)
         tar  jxvf  已有的壓縮包(test.tar.bz2)
         解壓到指定目錄:添加參數(shù) -C(大寫)
             tar zxvf test.tar.gz -C 解壓目錄(./mytest)
5    查看壓縮包中有哪些文件
         tar -tvf test.tar        
6    zip工具
         壓縮:zip -r 壓縮包名 要壓縮的文件(含文件或目錄)
             壓縮目錄需要使用參數(shù)-r
             使用該命令不需要指定壓縮包后綴
            zip -r xxx file dir ---生成xxx.zip文件
         解壓縮:unzip壓縮包名
             解壓縮到指定目錄:添加參數(shù) –d 解壓目錄
                 unzip xxx.zip -d /home/itcast/test/day1
            注意:解壓目錄若不存在則會(huì)創(chuàng)建.

7.軟件的安裝卸載


1.在線安裝
         軟件安裝:sudo apt-get install 軟件名
         軟件卸載:sudo apt-get remove 軟件名
         更新軟件列表:sudo apt-get update
         清理安裝包:sudo apt-get clean
             清理的是緩存路徑:/var/cache/apt/archives
2 軟件包安裝
         在Ubuntu系統(tǒng)下必須有deb格式的安裝包
         軟件安裝
             sudo dpkg -i xxx.deb
         軟件卸載
             sudo dpkg –r 軟件名

8.vim

1). 三種基本工作模式:命令模式、文本輸入模式嫉入、末行模式

2). 命令模式:用戶按下ESC鍵焰盗, 就可以使vi進(jìn)入命令模式下

  • 保存退出
快捷鍵 操作
ZZ 保存退出
  • 代碼格式化
快捷鍵 操作
gg=G 代碼格式化
  • 光標(biāo)移動(dòng)
快捷鍵 操作
h 光標(biāo)左移
j 光標(biāo)下移
k 光標(biāo)上移
l 光標(biāo)右移
M 移動(dòng)光標(biāo)到中間行
gg 光標(biāo)移動(dòng)到文件開頭
G/L 光標(biāo)移動(dòng)到文件末尾的行首
O 光標(biāo)移到行首
$ 光標(biāo)移到行尾
nG 行跳轉(zhuǎn),例12G咒林,跳到12行處
  • 刪除命令
快捷鍵 操作
x 刪除光標(biāo)后一個(gè)字符熬拒,相當(dāng)于Del
X 刪除光標(biāo)前一個(gè)字符,相當(dāng)于Backspace
dw 刪除光標(biāo)開始位置的字垫竞,包含光標(biāo)所在字符
D[d$] 刪除光標(biāo)后本行所有內(nèi)容澎粟,包含光標(biāo)所在字符
dd 刪除光標(biāo)所在行(本質(zhì)其實(shí)是剪切)
ndd 從光標(biāo)當(dāng)前行向下刪除指定的行數(shù),如15dd
v/ctrl+v 使用h欢瞪、j活烙、k、l移動(dòng)選擇內(nèi)容遣鼓,然后按d刪除其中ctrl+v是列模式啸盏,v為非列模式
  • 撤銷和反撤銷命令
快捷鍵 操作
u 一步一步撤銷,相當(dāng)于word文檔ctrl+z
ctrl-r 反撤銷骑祟,相當(dāng)于word文檔的ctrl+y
  • 復(fù)制粘貼
快捷鍵 操作
yy 復(fù)制當(dāng)前行
nyy 復(fù)制n行回懦,如10yy
p 在光標(biāo)所在位置向下新開辟一行,粘貼
P 在光標(biāo)所在位置向上新開辟一行次企,粘貼
剪切操作 按dd或者ndd刪除怯晕,將刪除的行保存到剪貼板中,然后按p/P就可以粘貼了
  • 可視模式
快捷鍵 操作
v/ctrl+v 使用h缸棵、j舟茶、k、l移動(dòng)選擇內(nèi)容堵第;使用d刪除 使用y賦值 使用p粘貼到光標(biāo)的后面 使用P粘貼到光標(biāo)的前面
  • 替換操作
快捷鍵 操作
r 替換當(dāng)前字符
R 替換當(dāng)前行光標(biāo)后的字符
  • 文本移動(dòng)
快捷鍵 操作
>> 文本行右移
<< 文本行左移動(dòng)
  • 查找命令
快捷鍵 操作
/ /xxxx, 從光標(biāo)所在位置開始搜索稚晚,按n向下搜索,按N向上搜索
型诚? ?xxxx, 從光標(biāo)所在的到位置開始搜索鸳劳,按n向上搜索狰贯,按N向下搜索

3). 文本輸入模式:從命令模式切換到文本輸入模式模式只需輸入如下命令:

快捷鍵 操作
i 在光標(biāo)前插入
a 在光標(biāo)后插入
I 在光標(biāo)所在行的行首插入
A 在光標(biāo)所在行的行尾插入
o 在光標(biāo)所在的行的下面新創(chuàng)建一行,行首插入
O 在光標(biāo)所在的行的上面新創(chuàng)建一行,行首插入
s 刪除光標(biāo)后邊的字符涵紊,從光標(biāo)當(dāng)前位置插入
S 刪除光標(biāo)所在當(dāng)前行傍妒,從行首插入
按列模式插入 先按ctrl+v進(jìn)入列模式,按hjkl移動(dòng)選定某列摸柄,按I或者shift+i 向前插入颤练,然后插入字符,最后按兩次esc

4). 末行模式:從命令模式切換的末行模式驱负,輸入冒號(:)

  • 保存退出
快捷鍵 操作
q 退出
q! 強(qiáng)制退出嗦玖,不保存修改內(nèi)容
w 保存修改內(nèi)容,不退出
wq 保存并退出
x 相當(dāng)與wq
  • 替換操作
快捷鍵 操作
:s/old/new/ 光標(biāo)所在行的第一個(gè)old替換為new
:s/old/new/g 光標(biāo)所在行的所有old替換為new
:m, ns/old/new/g 將第m行至第n行之間的old全部替換成new
:%s/old/new/g 當(dāng)前文件的所有old替換為new
:1, $s/old/new/g 當(dāng)前文件愛你的所有old替換為new
:%s/old/new/gc 同上跃脊,但是每次替換需要用戶確認(rèn)

下面表格中old表示原字符串宇挫,new表示新字符串

快捷鍵 操作
:s/old/new/ 光標(biāo)所在行的第一個(gè)old替換為new
:s/old/new/g 光標(biāo)所在行的所有old替換為new
:m, ns/old/new/g 將第m行至第n行之間的old全部替換成new
:%s/old/new/g 當(dāng)前文件的所有old替換為new
:1, $s/old/new/g 當(dāng)前文件愛你的所有old替換為new
:%s/old/new/gc 同上,但是每次替換需要用戶確認(rèn)
  • 快速翻屏
快捷鍵 操作
ctr+u 向上翻半屏
ctrl+d 向下翻半屏
ctrl+f 向上翻一屏
ctrl+b 向后翻一屏

5). 分屏:在末行模式下執(zhí)行shell命令酪术,器瘪!shell命令 按下兩次esc可以回到命令模式;從末行模式切換回命令模式绘雁,按兩次ESC,退格(backspace)或者回車鍵
* 在打開文件之后分屏

快捷鍵 操作
sp 當(dāng)前文件水平分屏
vsp 當(dāng)前文件垂直分屏
sp 文件名 當(dāng)前文件和另一個(gè)文件水平分屏
vsp 文件名 當(dāng)前文件和另一個(gè)文件垂直分屏
ctrl-w-w 在多個(gè)窗口切換光標(biāo)
wall/wqall/xall/qall/qall! 保存/保存退出/保存退出/退出/強(qiáng)制退出分屏窗口
  • 在打開文件之前分屏:
分屏: vim -on file1 file2...
垂直分屏: vim -On file1 file2 ...
注意 : n可以省略橡疼,有幾個(gè)文件就分即屏

6).vim的配置文件

用戶級別配置文件
    ~/.vimrc, 修改用戶級別的配置文件只會(huì)影響當(dāng)前用戶, 不會(huì)影響其他的用戶.
    例如: 在用戶的家目錄下的.vimrc文件中添加
        set tabstop=4  ----設(shè)置縮進(jìn)4個(gè)空格
        set nu        ----設(shè)置行號
        set shiftwidth=4  ---設(shè)置gg=G縮進(jìn)4個(gè)空格, 默認(rèn)是縮進(jìn)8個(gè)空格
系統(tǒng)級別配置文件
    /etc/vim/vimrc, 修改了系統(tǒng)級別的配置文件將影響系統(tǒng)下的所有用戶.
    說明: 由于linux是多用戶操作系統(tǒng), 建議只在用戶級別的配置文件下進(jìn)行修改, 不要影響其他用戶.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市庐舟,隨后出現(xiàn)的幾起案子欣除,更是在濱河造成了極大的恐慌,老刑警劉巖继阻,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件耻涛,死亡現(xiàn)場離奇詭異,居然都是意外死亡瘟檩,警方通過查閱死者的電腦和手機(jī)抹缕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來墨辛,“玉大人卓研,你說我怎么就攤上這事《么兀” “怎么了奏赘?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長太惠。 經(jīng)常有香客問我磨淌,道長,這世上最難降的妖魔是什么凿渊? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任梁只,我火速辦了婚禮缚柳,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘搪锣。我一直安慰自己秋忙,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布构舟。 她就那樣靜靜地躺著灰追,像睡著了一般。 火紅的嫁衣襯著肌膚如雪狗超。 梳的紋絲不亂的頭發(fā)上弹澎,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天,我揣著相機(jī)與錄音抡谐,去河邊找鬼裁奇。 笑死,一個(gè)胖子當(dāng)著我的面吹牛麦撵,可吹牛的內(nèi)容都是我干的刽肠。 我是一名探鬼主播,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼免胃,長吁一口氣:“原來是場噩夢啊……” “哼音五!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起羔沙,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤躺涝,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后扼雏,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體坚嗜,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年诗充,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了苍蔬。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,841評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蝴蜓,死狀恐怖碟绑,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情茎匠,我是刑警寧澤格仲,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站诵冒,受9級特大地震影響凯肋,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜汽馋,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一侮东、第九天 我趴在偏房一處隱蔽的房頂上張望午笛。 院中可真熱鬧,春花似錦苗桂、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至木缝,卻和暖如春便锨,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背我碟。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工放案, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人矫俺。 一個(gè)月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓吱殉,卻偏偏與公主長得像,于是被迫代替她去往敵國和親厘托。 傳聞我的和親對象是個(gè)殘疾皇子友雳,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評論 2 354

推薦閱讀更多精彩內(nèi)容