【发布时间】:2015-05-10 23:07:39
【问题描述】:
我需要将文件中的文件名替换为 cp 命令的字符串,因此它应该将现有文件名替换为同一文件中的 cp 源目标。文件以逗号分隔 #m 示例文件
ABC,TS-R:56:UT-123,/apps/home/t.txt
ICA,Y6734YGSU,/apps/home/t2.txt
MDI,UI-HDGD-PO567,/apps/home/t3.txt
现在我想要一个可以将 /apps/home/<filename>.txt 替换为 cp /apps/home/<filename>.txt /apps/cmb/<filename>.txt 的 sed 或 awk 命令
所以在 sed/awk 之后相同的文件应该有内容
ABC,TS-R:56:UT-123,cp /apps/home/t.txt /apps/cmb/t.txt
ICA,Y6734YGSU,cp /apps/home/t2.txt /apps/cmb/t2.txt
MDI,UI-HDGD-PO567,cp /apps/home/t3.txt /apps/cmb/t3.txt
我尝试了awk -F, '{$3="cp "$3" "$3""}1' OFS=, test.txt,但它只是在控制台中打印ABC,TS-R:56:UT-123,cp /apps/home/t.txt /apps/home/t.txt,而不是在文件中更改。
提前致谢。
【问题讨论】: