监视添加到目录的文件大小(Bash)
Posted
技术标签:
【中文标题】监视添加到目录的文件大小(Bash)【英文标题】:Monitor files added to directory for size (Bash) 【发布时间】:2018-11-20 21:30:13 【问题描述】:如果添加的文件太小,我想监视一个目录并中断另一个程序。这是我的原型:
inotifywait -r -m -e modify . |
while read _ _ file; do
if (( $(stat --printf="%s" "$file") << 36500 )); then
echo "break"
fi
done
但是带有比较运算符的行不起作用。是无法将内联执行与数学运算符结合起来,还是我使用不当?
【问题讨论】:
“小于”在 Bash 的算术上下文中只是<
。
@7Reeds 我很确定他们只是想将文件大小(以字节为单位)与“小于”进行比较,并以某种方式以<<
而不是<
结束。
【参考方案1】:
Bash arithmetic 语法表明这应该是(("$(stat --printf="%s" "$file")" < 36500))
。 <<
有时在数学中用来表示“远小于”,但它的定义并不像您想象的那样。
【讨论】:
以上是关于监视添加到目录的文件大小(Bash)的主要内容,如果未能解决你的问题,请参考以下文章