Linux

cut命令中的n選項有什麼用?

  • August 6, 2019

我正在學習cut命令。在 cut 的手冊頁中,它們顯示如下-n選項:

-n     (ignored)

但我不明白該n選項的用法或我們何時使用它。任何人都可以用一個例子來解釋嗎?

man cut將 -n 選項描述為“忽略”,僅僅是因為它沒有cutcoreutils.

但是,-n 選項在其他一些cut實現中實現,至少在 *BSD \ POSIX.2 實現中。

因此cutcoreutils 為它實現了一個存根選項,為了可移植性,為了不破壞與腳本的兼容性。但是,由於它沒有實現,因此使用它不會有任何效果。

man cutFreeBSD 12.0 開始:

-n 不拆分多字節字元。僅當至少選擇了一個字節時才會輸出字元,並且在零個或多個未選擇字節的前綴之後,選擇構成字元的其餘字節。

POSIX 標準cut頁面,@Kusalananda 指出的連結:

-n 不分割字元。當使用 -b 選項指定時,低-高(-分隔的數字)形式的列表中的每個元素應修改如下:

如果低位選擇的字節不是字元的第一個字節,低位應遞減以選擇低位最初選擇的字元的第一個字節。如果 high 選擇的字節不是字元的最後一個字節,high 應遞減以選擇在 high 最初選擇的字元之前的字元的最後一個字節,如果沒有前面的字元,則為零。如果結果範圍元素的高等於零或低大於高,則應從該輸入行的列表中刪除列表元素,而不會導致錯誤。

形式為 low- 的列表中的每個元素都應按上述處理,將 high 設置為目前行中的字節數,不包括終止的 . 表單列表中的每個元素 - 高應按上述方式處理,低設置為 1。num(單個數字)形式列表中的每個元素應按上述方式處理,低設置為 num,高設置為 num。

引用自:https://unix.stackexchange.com/questions/534108