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的變化﹐請多花些時間在上面。