当我在shell外部使用AWK打印命令时,它工作得很好.下面是以逗号分隔的文件(sample.txt)的内容.
IROG,1245,OUTO,OTUG,USUK
Run Code Online (Sandbox Code Playgroud)
之后,在shell外执行下面的命令我得到IROG输出.
cat sample.txt | awk -F, '{print $1}' > data.txt
Run Code Online (Sandbox Code Playgroud)
下面是shell脚本
my $HOME ='home/tmp/stephen';
my $DATA ="$HOME/data.txt";
my $SAMPLE ="$HOME/sample.txt";
`cat $SAMPLE | awk -F, '{print $1}' > $DATA`;
Run Code Online (Sandbox Code Playgroud)
但是在这里我得到的内容与原始文件相同,而不是第1列.
输出是 IROG,1245,OUTO,OTUG,USUK
但我只期待IROG.有人可以告诉我这里错了吗?
我有一个CSV文件,其中每列包含在实际值之前添加的不必要的额外空格.我想删除所有空格来创建一个新的CSV文件.
例如
输入CSV文件中的一行
123, ste hen, 456, out put
Run Code Online (Sandbox Code Playgroud)
预期的输出CSV文件
123,ste hen,456,out put
Run Code Online (Sandbox Code Playgroud)
我尝试使用awk修剪每一列,但它没有用.