如果我有一个由新行分隔的文本文件中的数据列表,是否有办法将某些内容添加到开头,然后是数据,然后再添加其他内容然后再添加数据?
EG字段X将成为新的X = X;
你能用bash或sed这样做,还是只用unix等unix工具?
编辑:
我想获得“ITEM_SITE_ID:{$ row ['ITEM_SITE_ID']}”“。
我正在使用此行awk'{print“\”“$ 1”{:$ row ['$ 1']}
“}}
我得到了这个“ITEM_SITE_ID {:$ row []}
我错过了什么?
答案 0 :(得分:1)
Awk通常是完成此类任务的完美工具。对于您的具体示例:
awk '{ print "new " $1 " = " $1 ";" }'
答案 1 :(得分:1)
我认为问题是你的单引号没有被正确转义,这实际上是不可能的。
使用sed:
sed "s/\(.*\)/\1 = \1;/"
或者在你的情况下:
sed "s/\(.*\)/\"\1 :{\$row['\1']}\"/"
用bash:
while read line
do
echo "\"$line :{\$row['$line']}\""
done
实际上,您可以使用bashes $''字符串在awk中执行此操作:
awk $'{ print "\\"" $1 " :{$row[\'" $1 "\']}\\"" }'