我有两个文本文件,我想对其进行解析,然后使用 grep
调用将解析的两行合并到一个文件中。例如:
Foo.txt Foo2.txt
*1 A
2 B
*3 C
4 D
*5 E
我想拥有
FooFinal.txt
2B
4D
我正在尝试这样使用 grep 命令
grep -A 1 '*' Foo.txt|grep -v '*'
但是,我不确定如何 grep 这两个文件。
我假设人们会使用 paste
命令来连接,但我不确定。
此外,如果这很难理解,请告诉我,以便我澄清。
谢谢!
最佳答案
修改问题的答案
$ paste -d '' foo.txt foo2.txt | grep -v '^\*'
2B
4D
原始问题的答案
$ paste -d '' foo.txt foo2.txt | grep '^\*'
*1A
*3C
*5E
工作原理
paste -d '' foo.txt foo2.txt
这将逐行合并两个文件。选项
-d ''
告诉 paste 直接合并行,中间没有空格。grep '^\*'
这只会选择那些以
*
开头的行。对于修改后的问题,我们添加了
-v
来反转匹配:grep -v '^\*'
删除以*
开头。
关于bash - 使用 bash 解析两个文件并将字符串连接到一个文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40141795/