歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> Unix基礎知識

UNIX高手的20個習慣

Unix 下要采用的20個好習慣為:

1)        在單個命令中創建目錄樹。

2)        更改路徑;不要移動存檔。

3)        將命令與控制操作符組合使用。

4)        謹慎引用變量。

5)        使用轉義序列來管理較長的輸入。

6)        在列表中對命令分組。

7)        在 find 之外使用 xargs 。

8)        了解何時 grep 應該執行計數——何時應該繞過。

9)        匹配輸出中的某些字段,而不只是對行進行匹配。

10)    停止對 cat 使用管道。

11)    使用文件名自動完成功能 (file name completion)。

12)    使用歷史擴展。

13)    重用以前的參數。

14)    使用 pushd 和 popd 管理目錄導航。

15)    查找大型文件。

16)    不使用編輯器創建臨時文件。

17)    使用 curl 命令行實用工具。

18)    最有效地利用正則表達式。

19)    確定當前用戶。

20)    使用 awk 處理數據。

1. 在單個命令中創建目錄樹

清單 1 演示了最常見的 UNIX 壞習慣之一:一次定義一個目錄樹。

清單 1. 壞習慣 1 的示例:單獨定義每個目錄樹

~ $ mkdir tmp

~ $ cd tmp

~/tmp $ mkdir a

~/tmp $ cd a

20. 使用 awk 處理數據

       awk 命令似乎始終處在 Perl 的陰影下,但它對於簡單、基於命令行的數據處理來說是一個快速、實用的工具。清單 15 顯示了如何開始使用 awk 命令。若要獲取文件中每行文本的長度,請使用 length() 函數。若要查看字符串 ing 是否出現在文件文本中,請使用 index() 函數,該函數返回 ing 首次出現的位置,這樣您就可以使用它來進行進一步的字符串處理。若要 tokenize(也就是說,將一行拆分為單詞長度的片段)某個字符串,請使用 split() 函數。
清單 15. 基本 awk 處理

$ cat text

testing the awk command

$ awk '{ i = length($0); print i }' text

23

$ awk '{ i = index($0,”ing”); print i}' text

5

$ awk 'BEGIN { i = 1 } { n = split($0,a," "); while (i <= n) {print a[i]; i++;} }' text

testing

the

awk

command

       打印文本文件中的指定字段是一項簡單的 awk 任務。在清單 16 中,sales 文件包含每個銷售人員的姓名,後跟每月銷售數字。您可以使用 awk 命令來快速獲得每個月的銷售總額。缺省情況下,awk 將每個以逗號分隔的值視為不同的字段。您使用 $n 操作符來訪問每個字段。
清單 16. 使用 awk 對數據進行匯總

$cat sales

Gene,12,23,7

Dawn,10,25,15

Renee,15,13,18

David,8,21,17

$ awk -F, '{print $1,$2+$3+$4}' sales

Gene 42

Dawn 50

Renee 46

David 46

       成為命令行高手需要進行一些實踐。按照相同的方式處理問題很簡單,因為您已經習慣了。擴展您的命令行資源可以顯著提高您的工作效率,並促使您朝著 UNIX 命令行高手的方向前進!

Copyright © Linux教程網 All Rights Reserved