Linux 下Shell编程使用while 时为什么会提示参数太多? 第7行: [ : 参数太多

Linux 下Shell编程使用while 时为什么会提示参数太多? 第7行: [ : 参数太多,第1张

你在while[xxx]之前将while中括号内的东西(xxx)打印一下看就明白了:echo xxx 可能原因是其中有参数带有特殊字符,如”[”、“]“等,你可以这样引用参数:while [ ${var} = ${var2} ]do ...如果还可能有空串的话,这样万无一失:while [ ”X${var}“ = "X${var2}" ]do ... X是随便拼上去的一个字符,目的就是保证你那个串不会是空的

字符串比较包括

注意 :这里的符号要 转义 ,否则变成了重定向了。

运行结果:

注意 :上面的 等号左右两侧 中括号内侧 一定要有空格

运行结果:

以上的例子,说明 小写字母排在字典的后面 (类似于ascii的大小)。

sort 可以对字符串排序,sort 命令会把小写字母放在前面

运行结果:

注意上面的 中括号内侧 一定要有空格。

注意 :有时候想在字符串比较的时候使用 正则表达式 ,可以使用 双方括号 ,如:

运行如下:

注意:上面的 双等号左右两侧,中括号内侧 一定要有空格


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8978007.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存