閱讀505 返回首頁    go 阿裏雲 go 技術社區[雲棲]


工作中常用的Linux命令

1.從其他機器拷貝文件夾

格式: scp -r 文件夾名 用戶名@機器名:/路徑

範例: scp -rsearch work@zjm-testing-ps23.zjm.baidu.com:/home/work/

2.查看哪個程序在用特定端口

格式: netstat-nap | grep 端口號

範例: netstat -nap| grep 8080

3.實時監控日誌文件內容

格式: tail -f 日誌文件名

範例: tail -fui.log

說明:這顯示ui.log文件的最後十行。tail 命令繼續顯示添加到ui.log文件中的行。顯示會一直繼續,直到您按下 Ctrl-C 按鍵順序來停止

4.查看指定用戶擁有的進程

格式: pstree 用戶id

範例: pstreework

說明:顯示work用戶正在運行的各進程之間的繼承關係,以樹狀結構方式列出

5.查看磁盤空間使用情況

格式: df -h

6.查找某文件中出現指定字符串的行

格式: grep 指定字符串 文件名

範例: grep 電視劇夏天的味道 ui.log

說明: 找出日誌文件ui.log中包含“電視劇夏天的味道”的行

7.查看內存使用情況

格式: free

8.查看本機係統內核

格式: uname -a

9.查看當前路徑下的文件/文件夾大小

格式: du -hs 文件名/文件夾名

10.變更為其它使用者的身份

格式: su 使用者帳號

範例: su work

11.遠程登陸

格式: ssh 用戶名@機器名

範例: sshrd@build01

12.不掛斷地運行命令

格式:nohup command &

範例:nohup ./build_index.sh -d../newdbi/ &

13.查看文件的行數

格式: wc -l 文件名

範例: wc -l as.conf

14.比較兩個文件的不同之處

格式: vimdiff 文件1 文件2

範例: vimdiff 1.txt2.txt

15.殺死進程

格式: killall-9 進程名

範例: killall-9 bs.se

16.在SecureCRT中把文件傳給本機的SecureCRT安裝目錄的download目錄下

格式: sz 文件名

範例: sz 1.txt

17.把本機文件傳給SecureCRT中當前機器的當前目錄

格式: rz

18.Vi文本編輯器

格式:vi  [選項]文件名

參數:

 +n   從第n行開始編輯文件

 +/exp 從文件中匹配字符串exp的第一行開始編輯

Vi中的操作主要有兩類:命令模式和插入模式,模式之間的轉換為:

                               i/I

 命令模式                      插入模式

                                  ESC

Vi命令模式下的一些重要命令:

    u     撤銷最近一次編輯動作

    :q!    放棄緩衝區的內容,並推出vi

:wq   保存緩衝區的內容,並推出vi

範例:vi  txt1

Vi中更多有用的命令:

cw。用於刪除掉一行中從某個字開始到結束的部分,並進入編輯狀態。

l 例如:一個文件中有這樣一行:aabbccddeeffgg

l 我想把eeffgg刪除,那麼,我就可以在非編輯狀態下,將光標的位置放在第一個“e”處,使用cw命令,那麼,eeffgg就都被刪除了,並且可以開始編輯。

set nu。用於顯示行號。在非編輯狀態下,使用“:setnu”回車即可。

0。非編輯狀態下,該命令用於移動到行首。

$。非編輯狀態下,該命令用於移動到行尾。

~。大小寫轉換。在非編輯狀態下,將光標移至某個字符,使用~命令,那麼小寫的字母會變成大寫,大寫的字母會變成小寫。

p。係統會在緩衝區保留最後9個被刪除的行。因此,如果想恢複最後一次被刪除的行則在非編輯狀態下使用“"1p”命令。如果想恢複倒數第2次被刪除的行則在非編輯狀態下使用“"2p”命令。

滾動屏幕的命令

l ^F  向前滾動一屏

l ^B  向後滾動一屏

l ^D  向前滾動半屏

l ^U  向後滾動半屏

在屏幕內移動

l H  移動到起始點----屏幕首行

l M  移動到屏幕的中間行

l L   移動到屏幕的末行

l nH  移動到屏幕首行下麵的第n行

l nL  移動到屏幕末上上麵的第n行

搜索

l n         同向重複搜索

l N        反向重複搜索

l /回車     向前重複搜索

l ?回車    向後重複搜索

將腳本中第1-10行注釋掉:使用:“:1,10s/^/#”。

 

19.察看文件類型

格式:file 文件名

20.文本抽取

格式:awk [-F 域分割符] ‘命令’ 輸入文件名

說明:awk用以從文本文件和字符串中抽取信息,為獲得信息,文本必須格式化,意即用域分割符劃分抽取域,分割符可以使任意字符。Commands由模式和動作兩部分組成,模式部分決定動作語句何時觸發,模式可以使任何條件語句或複合語句或正則表達式,實際動作在打括號{}內指名,動作大多用來打印,如果不指明動作,awk將打印出所有瀏覽出來的紀錄。

      awk執行時,其瀏覽的域標記為$1,$2,$3…..$n,$0為所有域

awk 的一些內置變量:

     NF  瀏覽記錄的域個數

     NR  已讀的記錄數

     FIILENAME  awk瀏覽的文件名

範例:

      awk ‘END {print NR}’grade.txt

      awk ‘{if ($4==”Yellow”|| $4~/Brown/)print $0}’ grade.txt

21.非交互性文本流編輯器

格式:sed [選項] ‘命令’ 輸入文件名

參數:

     -n   不打印,sed不寫編輯行到標準輸出,缺省為打印所有行

     -c   下一命令是編輯命令,使用多項編輯時加入此選項。如果隻用到一條sed命令,

此選項無用,但指定它也沒有關係。

     -f    如果正在調用sed腳本文件,使用此選項。此選項通知sed一個腳本文件支持所有的sed命令,例如:sed -f myscript.sed input_file,這裏myscript.sed即為支持sed命令的文件。

範例:

     sed –n ‘2p’ quota.txt    打印文本的第二行

     sed –n ‘/Neave/’pquota.txt  匹配單詞Neave,並打印此行

     sed ‘1d’quota.txt   刪除文本的第一行

22.將文件中的記錄分類

格式:sort [選項] –o 輸出文件名 [其他選項] +pos1 +pos2 輸入文件名

參數:

     -c   測試文件是否已經分類

     -m   合並兩個分類文件

     -u    刪除所有複製行

     -o    存儲sort結果的輸出文件名

其它參數有:

     -b 使用域進行分類時,忽略第一個空格。

-n 指定分類是域上的數字分類。

-t 域分隔符;用非空格或t a b鍵分隔域。

-r 對分類次序或比較求逆。

+n n為域號。使用此域號開始分類。

n n為域號。在分類比較時忽略此域,一般與+ n一起使用。

pos1,pos2 傳遞到m,n。m為域號,n為開始分類字符數;例如4,6意即以第5域分類,從第7個字符開始。

範例:sort -t:+2n video.txt  以“:”為域分割符,按第三個域數字分類video.txt

23.去除文本文件的重複行

格式:uniq [選項] 輸入文件 [輸出文件]

參數:

     -u 隻顯示不重複行。

-d 隻顯示有重複數據行,每種重複行隻顯示其中一行

-c 打印每一重複行出現次數。

-f n為數字,前n個域被忽略。一些係統不識別- f選項,這時替代使用-n。

範例:uniq –n2parts.txt

24.連接兩個文本文件

格式:join [選項] 文件1文件2

說明:join用來將來自兩個文本文件的行連在一起,兩個輸入文件必須已經分過類,每個文件裏都有一些元素與另一個文件相關,由於這種關係,join將兩個文件連在一起。

參數:

     -an   n為一數字,用於連接時從文件n中顯示不匹配行。例如, - a 1顯示第一個文件的不匹配行,- a 2為從第二個文件中顯示不匹配行。

     -o n.m n為文件號,m為域號。1. 3表示隻顯示文件1第三域,每個n,m必須用逗號分隔,如1 . 3,2 . 1。

-j n mn為文件號,m為域號。使用其他域做連接域。

-t 域分隔符。用來設置非空格或t a b鍵的域分隔符。例如,指定冒號做域分隔符- t:

範例: join –o1.1,2.2 names.txt town.txt

25.從文本文件中剪切列或域

格式:cut [選項] 文件名

參數:

    -c list 指定剪切字符數。

-ffield 指定剪切域數。

-d 指定與空格和tab鍵不同的域分隔符。

- c用來指定剪切範圍,如下所示:

- c 1,5-7 剪切第1個字符,然後是第5到第7個字符。

-f 格式與- c相同。

-f 1,5 剪切第1域,第5域。

範例: cut –d:-f3 pers

26.將兩個文本文件粘貼在一起

格式:paste[options] file1 file2

說明:粘貼兩個不同來源的數據時,首先需將其分類,並確保兩個文件行數相同。paste將按行將不同文件行信息放在一行。缺省情況下, paste連接時,用空格或tab鍵分隔新行中不同文本,除非指定-d選項,它將成為域分隔符。

參數:

       -d 指定不同於空格或t a b鍵的域分隔符。例如用@分隔域,使用-d @。

-s 將每個文件合並成行而不是按行粘貼。

範例: paste –d:pas2 pas1  用冒號作分割符

27.將大文件進行分割

格式:split [選項] 輸入文件名 輸出文件名前綴

參數:-a 指定後綴的長度(缺省為2)

      -b 每個輸出文件的字節大小

      -l 每個輸出文件的行數

範例:split –l 1000 bigfile.txtoutfile

最後更新:2017-04-03 12:54:04

  上一篇:go CSS中針對IE6、7和FF的特殊寫法
  下一篇:go Android 用meta-data配置參數