前两天学习sed和awk来进行日志分析~~最大的日志有一百多G……
今日需要将进一步的分析结果可视化,即弄成csv。
利用awk来生成csv貌似不会太大,就是分隔符设置成逗号即可。
脚本makeCsv.sh如下:
#!/bin/bash echo "The script will remove the result.csv, sure? - y/n" read n if [$n == "n" || $n == "N"]; then exit 0 fi rm -f result.csv echo "result.csv removed..." touch result.csv echo "result.csv touched..." for file in * do cat "$file" | awk '{print("'$file'"","$1","$2)}' >> result.csv done cat result.csv | sed -e '/result/.csv/ d' -e '/makeCsv/.sh/ d' >> temp.csv rm -f result.csv mv temp.csv result.csv exit 0
后面的处理是为了消去前面用for循环造成的读入result.csv和makeCsv.sh两个文件的内容。