我目前正在制作一个shell程序,我想使用pipe命令显示特定文件中的总字节数。我知道管道命令采用左侧的任何内容并将其作为输入右侧。 (假设你在文件所在的目录中)
我知道命令(wc -c
)显示文件中的字节数,但我不知道如何管道它。我尝试过的是:
ls fileName.sh | wc -c
答案 0 :(得分:1)
wc
将文件名作为参数,而不是输入。试试这个:
wc -c fileName.sh
wc
程序需要多个参数。您可以执行此操作以将其应用于当前工作目录中的所有条目:
wc -c $(ls)
另一种方法是使用xargs
将输入转换为参数:
ls | xargs wc -c
如果文件名中包含空格,则可能需要使用更复杂的行。 ls
每行可以输出一个文件,xargs
可以告知只能在\n
上分割:
ls -1 | xargs -d '\n' wc -c
如果您希望使用find
代替ls
(更强大的工具),则-print0
的{{1}}选项会与find
选项一起使用到-0
。