输入文件看起来像
ab 1 2
xy 3 5
当我在循环中使用以下行时
NAME=`echo $line | awk '{print $1}'`
echo $NAME "-"
输出是
ab -
xy -
我不知道单词和“-”之间的“空格”是由awk还是echo引起的。我要删除它。我想确保$ NAME是“ ab”或“ xy”,而不是“ ab”或“ xy”。
我怎样才能做到这一点?
输入文件看起来像
ab 1 2
xy 3 5
当我在循环中使用以下行时
NAME=`echo $line | awk '{print $1}'`
echo $NAME "-"
输出是
ab -
xy -
我不知道单词和“-”之间的“空格”是由awk还是echo引起的。我要删除它。我想确保$ NAME是“ ab”或“ xy”,而不是“ ab”或“ xy”。
我怎样才能做到这一点?
这是回声:
$ NAME="foo"
$ echo $NAME $NAME
foo foo
$ echo $NAME$NAME
foofoo
没有空间:
$ echo ${NAME}BAR
fooBAR
echo
outputs its arguments separated by spaces. You can modify the echo statement to:
echo "${NAME}-"
From bash(1)
:
echo [-neE] [arg ...]
Output the args, separated by spaces, followed by a newline. [...]
You could use printf
too:
printf "%s-\n" "${NAME}"