我有一个包含数百行的文件。以下是 3 行示例。
"A",
"B",
"C",
(引号实际上就在那里。)
我想使用 Linux 实用程序来更改行并在每行上复制原始字符串。例如:
FixedString1 A FixedString2 A
FixedString1 B FixedString2 B
FixedString1 C FixedString2 C
谢谢。
答案1
像这样
- 和sed:
$ sed -E 's/^"([A-Z]+)",/FixedString1 \1 FixedString2 \1/' file
FixedString1 A FixedString2 A
FixedString1 B FixedString2 B
FixedString1 C FixedString2 C
- 和awk:
$ awk -F'"' '{print "FixedString1 " $2 " FixedString2 " $2}' file
FixedString1 A FixedString2 A
FixedString1 B FixedString2 B
FixedString1 C FixedString2 C
- 和珀尔:
$ perl -F'"' -nE 'say "FixedString1 $F[1] FixedString2 $F[1]"' file
FixedString1 A FixedString2 A
FixedString1 B FixedString2 B
FixedString1 C FixedString2 C
- 和巴什:
while IFS='"' read -r _ x _; do echo "FixedString1 $x FixedString2 $x"; done < file
FixedString1 A FixedString2 A
FixedString1 B FixedString2 B
FixedString1 C FixedString2 C