档案是:
12345,Collect
34522,Share
45221,Result
脚本:
awk -F ',' '{print $1 $2}' file | while read -r first second
do
echo $first "and" $second
done
我正在尝试在第一个和第二个变量中收集$1
和$2
。
由于
答案 0 :(得分:2)
请像这样使用{print $1 " and " $2}
,
$ cat file
12345,Collect
34522,Share
45221,Result
$ awk -F ',' '{print $1 " and " $2}' file
12345 and Collect
34522 and Share
45221 and Result
答案 1 :(得分:2)
您应该使用$1,$2
代替$1 $2
否则awk将结合$ 1 $ 2
awk -F ',' '{print $1,$2}' file | while read -r first second
do
echo $first "and" $second
done
我猜您正在使用$first
$second
进行其他处理任务,但是如果您只想打印出一些字符串,@ Elliott Frisch的方式会更好
一种印刷方式是:
sed 's/,/ and /' file
答案 2 :(得分:1)
如果不使用awk
,您可以做得更好。
IFS=,
while read -r first second; do
echo $first and $second
done < file
unset IFS