合并命令行

时间:2015-12-01 09:27:38

标签: awk merge

我有这些命令行:

setProperty

前3行将其输出保存在文本文件中。 然后我将这些文本的列合并到一个文件中以显示输出。 有人可以帮我在一行中使用相同的命令而不将它们保存在文本文件中吗?

此命令用于更改标准输出:

grep -e "[0-9] ERROR" /home/aa/lab/utb/cic/nova-all.log | awk '{ print $6 }' | awk -F'-' '{print $3""$2""$1}' | cut -c 1-4,7-8 > part1date.txt
grep -e "[0-9] ERROR" /home/aa/lab/utb/cic/nova-all.log | awk '{ print $3" "$4" "$5" "$9 }' > part1rest.txt
grep -e "[0-9] ERROR" /home/aa/lab/utb/cic/nova-all.log | awk '{ s = ""; for (i = 15; i <= NF; i++) s = s $i " "; print s}' > part1end.txt

paste -d \  part1date.txt part1rest.txt part1end.txt  > temp.txt
rm part1*
cat temp.txt

采用以下格式:

sep 10 11:13:55 node-20 nova-scheduler 2014-10-12 10:36:55.675 3817 ERROR nova.scheduler....

表示更改列的位置并更改日期的格式。

1 个答案:

答案 0 :(得分:4)

awk '/[0-9] ERROR/{gsub("-","",$6);$2=$6;$6=$9;for(i=0;++i<=NF;)$i=i<6?$(i+1):$(i+9);NF-=9;print}' file