gpt4 book ai didi

file - 如何 'cut' 为空?

转载 作者:行者123 更新时间:2023-12-04 02:03:16 25 4
gpt4 key购买 nike

Unix 'file' 命令有一个 -0 选项,可以在文件名后输出一个空字符。这被认为适合与 'cut' 一起使用。

来自 man file :

-0, --print0
Output a null character ‘\0’ after the end of the filename. Nice
to cut(1) the output. This does not affect the separator which is
still printed.

(注意,在我的 Linux 上,不打印“-F”分隔符 - 这对我来说更有意义。)

如何使用“cut”从“file”的输出中提取文件名?

这就是我想要做的:
find . "*" -type f | file -n0iNf - | cut -d<null> -f1

哪里 <null>是 NUL 字符。

嗯,这就是我想要做的,我想要做的是从具有特定 MIME 类型的目录树中获取所有文件名。我使用grep(未显示)。

我想处理所有合法的文件名,而不是卡在带有冒号的文件名上,例如,在他们的名字中。因此,NUL 会非常好。

我想非切割解决方案也很好,但我不想放弃一个简单的想法。

最佳答案

只需指定一个空分隔符:

cut -d '' -f1

(注意: -d''之间的空格很重要,因此 -d和空字符串作为单独的参数传递;如果你写 -d'',那么它将作为 -d传递” ,然后 cut会认为您尝试使用 -f1作为分隔符,它会提示,并显示“分隔符必须是单个字符”的错误消息。)

关于file - 如何 'cut' 为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9848426/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com