cut 命令中的 n 选项有什么用途?

cut 命令中的 n 选项有什么用途?

我正在学习cut命令。在 cut 的手册页中,他们显示了-n如下选项:

-n     (ignored)

但我不明白该选项的用法n或何时使用它。谁能用例子解释一下吗?

答案1

您将 -n 选项描述为“忽略”,只是因为它在的实现man cut中未实现。cutcoreutils

然而,-n 选项在其他一些实现上实现cut,至少在 *BSD \ POSIX.2 实现中。

因此,cut为了可移植性,为了不破坏与脚本的兼容性,coreutils 为其实现了一个存根选项。然而,由于它没有实现,所以使用它不会有任何效果。

man cutFreeBSD 12.0 开始:

-n 不分割多字节字符。仅当至少选择一个字节时才会输出字符,并且在零个或多个未选择字节的前缀之后,选择形成字符的其余字节。

来自POSIX 标准cut页面,@Kusalananda 指出的链接:

-n 不分割字符。当使用 -b 选项指定时,低-高(-分隔的数字)形式的列表中的每个元素应修改如下:

如果low选择的字节不是字符的第一个字节,则low应递减以选择low最初选择的字符的第一个字节。如果high选择的字节不是字符的最后一个字节,则high应递减以选择high最初选择的字符之前的字符的最后一个字节,如果没有先前的字符则为零。如果结果范围元素的高位等于零或低位大于高位,则应从该输入行的列表中删除该列表元素,而不会导致错误。

low- 形式的列表中的每个元素应按上述方式处理,其中 high 设置为当前行中的字节数,不包括终止的 。形式 - high 的列表中的每个元素应按上述方式处理,其中 low 设置为 1。 num 形式的列表(单个数字)中的每个元素应按上述方式处理,其中 low 设置为 num,high 设置为 num。

相关内容