剪切操作-奇怪的行为

问题描述

| 由于输入数据中的\“ * \”,剪切操作给出了意外的结果,如何修复它。 以下将更好地说明:
$ 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中的\'* \',如何解决?     

解决方法

        引用您的
line
变量...
vname=`echo \"$line\" | cut -d\' \' -f4-$NF`
另外,当您使用$ vname时,也请务必将其引用...
echo \"$vname\"