我有一个文件FILE1.TXT
。它只包含一个文件名FILE2.TXT
。
如何仅使用FILE2.TXT
查找FILE1.TXT
的记录数/行数?我已经尝试过的是:
cat FILE1.TXT | wc -l
但上述命令不起作用。
实际上,我需要显示输出如下:
File name is FILE2.TXT and the count is 2.
我已经尝试过(在脚本文件中使用以下语句):
echo "File name is "`cat FILE1.TXT`" and the count is " `wc -l < $(cat FILE1.TXT)`
但是上面的命令不起作用并且给出了错误
syntax error at line 1: `(' unexpected
答案 0 :(得分:2)
对于符合POSIX标准的shell:
wc -l $(cat FILE1.txt)
或者,与Bash:
wc -l $(<FILE1.txt)
这些都会报告文件名(但如果FILE1.txt
中有多个文件名,则会起作用)。如果您不希望报告文件名(但文件中只有一个名称),您可以使用:
wc -l < $(cat FILE1.txt)
wc -l < $(<FILE1.txt)
答案 1 :(得分:-1)
file=$(cat FILE1.txt | grep -o "FILE2.txt")
cat "$file" | wc -l