【发布时间】:2019-05-16 22:28:20
【问题描述】:
来自文件的多个输入值
我有这个命令
$ awk ' $0=="string_start" { inSection=1 } inSection; $0=="string_end" { nSection=0 }' input_file.txt >> output_file.txt
如果可能的话,我如何从 string_start_file.txt 的列表中获得多个输入值,将所有输出附加到 output_file.txt。
示例 string_start_file.txt
string_start_1
string_start_2
string_start_3
string_start_4
string_start_5
string_start_6
string_start_7
- 注意 string_end 始终相同。
所以它有点剂量
$ awk ' $0=="string_start1" { inSection=1 } inSection; $0=="string_end" { nSection=0 }' input_file.txt >> output_file.txt
$ awk ' $0=="string_start2" { inSection=1 } inSection; $0=="string_end" { nSection=0 }' input_file.txt >> output_file.txt
$ awk ' $0=="string_start3" { inSection=1 } inSection; $0=="string_end" { nSection=0 }' input_file.txt >> output_file.txt
$ awk ' $0=="string_start4" { inSection=1 } inSection; $0=="string_end" { nSection=0 }' input_file.txt >> output_file.txt
谢谢 ;)
【问题讨论】:
-
这个脚本背后的逻辑是什么?请也发布示例输出。
-
另外,请考虑改写您的问题。可以改写成这样:
I have a file 'string_start_file.txt' I wish to grab its lines and prefix each line before the corresponding line in 'input_file.txt' and append the output to 'output_file.txt'。我不确定这是否是你想要的。