2. Cut
(a) 該公用程式的所在系統及路徑.
RedHat: /usr/bin/cut
(b) 該公用程式所使用的 shared library.
libc.so.6 => /lib/libc.so.6 (0x4001d000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
(c) 該公用程式的主要用途說明.
這個命令通悼峔茬B理以'列表'方式排列的句子﹕您可以指定不同的分隔符號來將句子
分成數'列'﹐然後顯示指定的'列'。 (d) 儘可能地說明該公用程式所支援的參數及其意義.
cut [OPTION]... [FILE]...
cut工具選擇部分的各行 (依靠指定list)從各檔案(或者以預設值做標準輸入),和寫到標準輸出.
具體指定的list, 靠著一個character的分隔列的位置或是一個區域, 列編號從 1.開始.
option如下:
-b, --bytes=LIST
只輸出串列 LIST 中指定的位元組。-c, --characters=LIST 只輸出串列 LIST 中指定的字元組。 -d, --delimiter=DELIM 用 DELIM 做為劃界符號 (預設是用欄標 TAB)。 -f, --fields=LIST 只輸出串列 LIST 中指定的欄位。 -n (此選項忽略) -s, --only-delimited 不輸出沒有劃界符號的行。
-output-delimiter=STRING 使用STRING讓他就像,輸出定義符號的預設值用輸入的定義符號一樣。
--help 顯示這段說明訊息 --version 顯示版本資訊
用一個並且只能夠用其中的一個-b -c 或是 -f,其LIST由一個範圍所組成,或是許多範圍被Q逗號所隔開
, 範圍如下: N 第 N 個位元組、字元或欄位,由 1 算起。 N- 從第 N 個位元組、字元或欄位到這一行結束。 N-M 從第 N 個到第 M 個位元組、字元或欄位,包含 N、M。 -M 從這行的一開始到第 M 個位元組、字元或欄位,包含第 M 個。
假如沒有給引數 FILE、或給定的 FILE 為 -' 的話,則從標準輸入讀取資料。
(e) 儘可能地提供配合各種參數的使用範例.
cut -f1,5 -d. file1 >file2
將 file1 以 . 作欄分界,分出第一、五欄寫至 file
例如test檔案裡面的內容為: test 123456 cut -c 2
test 會出現e cut -b 4 test 會出現t cut -c 2-4 test
會出現est (f) 其他. (你可以自己發揮, 例如, 搭配其他程式的惆ㄔ峈k)
您如果檢查 /etc/passwd 這個檔案的內容﹐每行格式如下﹕ kenny:x:500:500:Kenny Chen:/home/kenny:/bin/bash
這是我們的系統帳號設定檔﹐這個檔裡面的每一行都是用 6 個"﹕"分成 7 列﹐ 假如我們只想顯示第一列(user ID)和第 7 列(user shell)﹐那麼我們可以用 cut 命令來做到﹕
cut -d ":" -f 1,7 /etc/passwd
這裡﹐我用 -d ":" 來指定用來做分隔的符號是"﹕"﹐然後用 -f 指定只顯示 第 1 和第 7 列。假如所有句子的字母長度都一致的話﹐我們甚至可以唷個 -c 來指定顯示第幾個字母到第幾個字母﹐如﹕-c1-7 就只顯示第 1 個到第 7 個字 母之間的內容。
這個命令捧|和其它命令一起使用﹐以過濾命令結果﹐找到指定所需的字串﹐靈 活運用﹐可有非授袨I的變化﹐請多花些時間在上面。