由于输入数据中的“*”,剪切操作给出了意想不到的结果,如何修复它..
下面的解释会更好:
$ line="000067 (base 16) SOFT * RITE, INC."
$ vendoroui=`echo $line | cut -d' ' -f1`
$ echo $vendoroui
000067
$ vname=`echo $line | cut -d' ' -f4-$NF`
$ echo $vname
1 bb bn btest.txt btmp.txt cc cut if sedTbKkAE sorted start.txt t10.sh t11.sh t12.sh t13.sh t14.sh t1.sh t2.txt t3.sh t4.sh t5.sh t6.sh t7.sh t8.sh t9.sh tmp RITE, INC.
这是由于inPut中的'*',如何解决??
最佳答案
引用你的行
变量...
vname=`echo "$line" | cut -d' ' -f4-$NF`
另外,当你使用 $vname 时,一定要引用它......
echo "$vname"
关于linux - cut 操作 - 奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6300163/