我尝试将每个日志文件中的行数作为下面的代码,但是下面的代码在line_count=$(wc -l < "{$entry}")
中给出了错误没有这样的文件或目录
我无法理解为什么会出错,因为在上面的行我打印文件名也是
#!/bin/bash
FILE="/var/log"
declare -i line_count
for entry in $FILE/* ; do
echo "{$entry}" # auth.log
line_count=$(wc -l < "{$entry}") # No such file or directory
echo "{$line_count}"
done
答案 0 :(得分:1)
使用shell变量时出错。
尝试将{$variable}
替换为${variable}
#!/bin/bash
FILE="/var/log"
declare -i line_count
for entry in $FILE/* ; do
echo "${entry}" # auth.log
line_count=$(wc -l < "${entry}") # change to this
echo "${line_count}"
done
答案 1 :(得分:-1)
围绕$entry
的花括号。删除它们:
line_count=$(wc -l < "$entry")