在这种情况下,我无法理解shell脚本。请帮忙。
inDumpPort=1
var=${inDumpPort//[[:blank:]]/}
输出仍为1。 为什么(或如何)需要它?
答案 0 :(得分:2)
[[:blank:]]
匹配空格或制表符空间。
它实际上是从$inDumpPort
变量中删除所有空格。
这个例子会更清楚:
inDumpPort=" 1 "
echo "<$inDumpPort>"
< 1 >
echo "<${inDumpPort//[[:blank:]]/}>"
<1>
答案 1 :(得分:1)
anubhava如何提到,表达式是删除你在方括号中给出的字符类的所有外观。因为你的bash字符类是:blank:,它会删除变量中的空格。
如果你这样做:
inDumpPort="Hello World"
echo "<${inDumpPort//[[:lower:]]/}>"
<H W>
它将从变量inDumpPort
中删除所有小写字符。
在这里查看更多Bash角色课程:Bash Character Classes