使用 UNIX 的 10 個良好習慣

2021-05-21 13:16:46 字數 2010 閱讀 3118

the linux cookbook 一書的作者 michael stutz 憑藉自己多年使用 unix 的經驗,總結了 10 個良好習慣,個人認為真的很受用,現摘要如下與大家分享。

建立層級目錄:使用 mkdir 的 -p 選項,如 mkdir -p tmp/a/b/c。

解包到指定的目錄:使用 tar 的 -c 選項,如 tar xvf newarc.tar.gz -c tmp/a/b/c。

聯合命令:使用 ;、&&、|| 等控制運算子,如 cd tmp/a/b/c && tar xvf ~/archive.tar。

小心使用變數:把變數放到 「」 中,如

~ $ ls tmp/

a b~ $ var="tmp/*"

~ $ echo $var

tmp/a tmp/b

~ $ echo "$var"

tmp/*

~ $ echo $vara ~ $ echo "$vara"

~ $ echo "$a"

tmp/*a

~ $ echo $a

tmp/a

~ $長命令的輸入:使用 / 分行折斷,如

~ $ cd tmp/a/b/c || /

> mkdir -p tmp/a/b/c && /

> tar xvf -c tmp/a/b/c ~/archive.tar

分組命令:使用 ()、{} 來分組命令,如

~ $ ( cd tmp/a/b/c/ || mkdir -p tmp/a/b/c && /

> var=$pwd; cd ~; tar xvf -c $var archive.tar ) /

> | mailx admin -s "archive contents"

使用 xargs:可以過濾輸出,如

~/tmp $ ls -l | xargs

-rw-r--r-- 7 joe joe 12043 jan 27 20:36 december_report.pdf -rw-r--r-- 1 /

root root 238 dec 03 08:19 readme drwxr-xr-x 38 joe joe 354082 nov 02 /

16:07 a -rw-r--r-- 3 joe joe 5096 dec 14 14:26 archive.tar -rwxr-xr-x 1 /

joe joe 3239 sep 30 12:40 mkdirhier.sh

~/tmp $

使用 grep 的 -c 選項可以計算輸出的行數,它比使用管道的 wc -l 更快,如

~ $ time grep and tmp/a/longfile.txt | wc -l

2811 real 0m0.097s

user 0m0.006s

sys 0m0.032s

~ $ time grep -c and tmp/a/longfile.txt

2811

real 0m0.013s

user 0m0.006s

sys 0m0.005s

~ $匹配輸出的字段:使用 awk,如

~/tmp $ ls -l | awk '$6 == "dec"'

-rw-r--r-- 3 joe joe 5096 dec 14 14:26 archive.tar

-rw-r--r-- 1 root root 238 dec 03 08:19 readme

~/tmp $

停用 cat 的管道輸出:可用 grep 代替,如

~ $ time cat tmp/a/longfile.txt | grep and

2811 real 0m0.015s

user 0m0.003s

sys 0m0.013s

~ $ time grep and tmp/a/longfile.txt

2811

real 0m0.010s

user 0m0.006s

sys 0m0.004s

~ $

使用 UNIX 的 10 個良好習慣

the linux cookbook 一書的作者 michael stutz 憑藉自己多年使用 unix 的經驗,總結了 10 個良好習慣,個人認為真的很受用,現摘要如下與大家分享。建立層級目錄 使用 mkdir 的 p 選項,如 mkdir p tmp a b c。解包到指定的目錄 使用 tar ...

git使用的良好習慣

git作為分布式版本控制系統受到大眾的追捧。為了管理好我們的 更好的團隊協作,我們使用git來協助我們。乙個簡單的git專案分支主要有master,develop,hotfix.master 可發布到線上的分支 develop 開發分支 hotfix 緊急修復bug分支 開始新版本開發 建立新的分支...

程式設計的 5 個良好習慣

像其他語言一樣,開發人員可以用 php 編寫出各種質量級別的 學習良好的程式設計習慣能夠提高 質量和效率。根據具體的情況,一般的開發人員往往比優秀的開發人員的效率低 10 20 優秀的開發人員的效率更高,因為他們擁有豐富的經驗和良好的程式設計習慣。不良的程式設計習慣將會影響到效率。本文通過展示一些良...