常用的shell命令和使用技巧

weixin_34219944發表於2012-01-18

最近一直在使用Linux,積累了一些經驗和使用技巧。廢話不說,拿來和大家分享一下。

1 檢視檔案的行數

wc -l filepath

2 檔案排序

sort -k1 -k2 -t "  " -n  -r filepath  

上面的命令為按照第一列,第二列進行數字倒序排列檔案記錄,分隔符為\t。

特別注意:當含有中文排序時,需要特殊指定LC_ALL=C進行排序。命令為 LC_ALL=C sort -k1 -k2 -t "  " -n  -r filepath 

3 檢視當前程式

ps ux

4 檢視程式佔用資源情況

top  ctrl+c退出

5 檢視硬碟和記憶體

df -h / free

6  shell程式中的引數

$#引數個數

$1 第一個引數, $2第二個引數

size=1

${!size}代表第一個引數,也就是當使用變數來代替數字時,需要用${!varible}的格式。

可以使用``將一段指令碼包含起來,這樣可以將整個指令碼的返回值儲存。

比如 result=`ls` ,執行後result就儲存有ls的返回結果了。

7 使用nohup sh run.sh &提交任務

這樣可以在網路中斷的情況下,不影響程式的執行,否則程式會因為網路中斷而出錯。

8 程式的輸出

一般程式會使用>重定向輸出,比如cat a.txt > b

但是有些程式可能會有輸出與錯誤輸出,如何制定呢?

sh -x run.sh 1> out 2> err即可。 注意 1,2和>之間不能有空格,要連續輸入。

9 管道的使用

如果有一系列簡單操作,可以使用管道。比如

cat input | sort | uniq > b

這樣就將input進行去重後結果輸出到b中,比較方便。


暫時就想到這些常用的,很多大家也非常熟悉,就不展開細說了。

歡迎拍磚~~

相關文章