IT序号网

shell之shell 中的 -lt 和 有什么区别

freeliver54 2025年01月19日 编程语言 14 0

我正在学习 shell 脚本,不明白 -eq 之间的区别和 == , -lt< , -gt> , 很快。

我正在尝试编写一个从 0 到 9 的 while 循环打印

num=0 
while [ $num -lt 10 ]; do 
   echo "$num" 
   ((num++)) 
done 

此代码有效,但当我更改 -lt 时至 < , 它说没有这样的文件或目录。

num=0 
while [ $num < 10 ]; do 
   echo "$num" 
   ((num++)) 
done 

< 有什么问题?这里?我总是要去找-lt吗?在 while 循环中?有没有通用的方法来做 while 循环?如果您能提供帮助,我们将不胜感激。

请您参考如下方法:

就语法而言,Shell 脚本总是与众不同。

所以当你说 -lt它意味着小于 (<)。因此,当您编写代码时,它可以正常工作

while [ $num -lt 10 ]; do 
   echo "$num" 
   ((num++)) 
done 

但是当你使用 < this 在 shell 脚本中用于从文件或目录读取输入。所以在你的例子中,它将搜索 $num 中的文件名。变量

简单来说

  1. -lt is Less than 用于条件检查

  2. <用于从文件中读取输入。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!