我正在编写一个 Unix 脚本,它读取文本文件的大小,如果文件有一定大小,它应该打印文本文件。如果它不是一个else,执行一个循环并继续该过程。
我正在使用以下命令来查找该文本文件的大小。
ls -l ${filepath}/{filename}.lst | awk '{print $5}'
如何将其分配给脚本内的变量并将其放入 if 条件中?或者,例如,是否if状况if[$var==461]
work?
或者我可以使用另一个命令来查找文件的大小?
您可以使用stat命令,无需使用AWK.
例如,在带有 Bash 的 Linux 中myfile是你的文件路径:
sz=$(stat -c '%s' myfile)
if [ $sz -eq 100 ]; then
echo "myfile is 100 bytes"
fi
Take note平等命令的-eq
这就是 Bash 中的算术二元运算符。
或者,您可以使用变量作为文件路径:
f=my/file/path
sz=$(stat -c '%s' $f)
if [ $sz -eq 100 ]; then
echo "$f is 100 bytes"
fi
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)