我有以下两个文件:
full-domains.txt
包含:
example1.com
example2.net
example3.org
example4.info
example5.co
extensions.txt
包含:
net
org
co
我想将扩展循环到grep命令中,该命令只匹配以扩展文件中的模式结尾的行。
我认为它类似于:grep -Ff extensions.txt full-domains.txt
但是我不确定在哪里添加语法以使其与$
的行尾相匹配。
输出应为:
example2.net
example3.org
example5.co
任何积极的意见都受到高度赞赏。我应该补充一点,除了grep
之外,我也对其他解决方案持开放态度。
答案 0 :(得分:4)
这显然是awk的工作:
$ awk -F'.' 'NR==FNR{exts[$0]; next} $NF in exts' extensions.txt full-domains.txt
example2.net
example3.org
example5.co
答案 1 :(得分:1)
我会使用xargs进行多次grep搜索。
$ xargs -a extensions.txt -L1 -I{} grep "{}$" full-domains.txt
example2.net
example3.org
example5.co
xargs参数:
-a extensions.txt
- 从文件中读取输入-L1
- 逐行-I{}
- 从命令{}
grep "{}$"
- 为每个分机执行的命令答案 2 :(得分:1)
您可以尝试以下解决方案 -
Setting up automysqlbackup (2.6+debian.3-1ubuntu1) ...
Could not open required defaults file: /etc/mysql/debian.cnf
Fatal error in defaults handling. Program aborted
Processing triggers for libc-bin (2.19-0ubuntu6.9) ...
Processing triggers for ufw (0.34~rc-0ubuntu2) ...
Processing triggers for ureadahead (0.100.0-16) ...