|
|
1
2
首先,我要说的是,你的问题描述并没有那么有帮助。下次,请更具体一点:你可能会错过更好的解决方案。 所以从您的描述中,我了解到您有两个包含空格分隔数据的文件。在第一个文件中,您希望根据某些搜索模式匹配前三列。如果找到,您希望在另一个文件中查找包含第一个文件中匹配行的第四列和第五列的所有行。从这些行中,您需要提取第二列和第三列,然后打印第一个文件的第一列和第二个文件的第二列和第三列。好的,这里是:
与另一个包含大量系统调用的海报解决方案不同,这根本不会回到shell中,因此应该足够快。 |
|
2
1
这是一种让我从awk迁移到perl的工作。如果要完成这一点,您可能会发现创建一个shell脚本更容易,该脚本创建一个awk脚本来进行查询,然后在单独的步骤中进行更新。 (我为阅读/更新windows ini风格的文件写了这样一个怪兽——真难看。我真希望我能用Perl。) |
|
|
3
1
我经常看到这样的限制:“我不能使用任何Perl模块”,当它不是一个家庭作业问题时,通常是由于缺少信息。 Yes, even you can use CPAN 包含有关如何在没有根权限的情况下本地安装CPAN模块的说明。另一种选择是获取CPAN模块的源代码并将其粘贴到程序中。 如果存在其他未声明的限制(如磁盘空间不足,无法安装(太多)附加文件),这些都没有帮助。 |
|
|
4
0
这似乎对我设置的一些与您的示例匹配的测试文件有效。以这种方式使用Perl(插入grep)可能会极大地损害性能,尽管…
编辑: 使用谢的解决方案(上图),它的思路更为周密。 |
|
|
Plankt0n · Shell,执行一个需要逐一遍历多个值的命令 1 年前 |
|
|
Fin · 如何使用bash从表中提取数据 1 年前 |
|
|
aenagy · Bash声明不喜欢带空格的值 1 年前 |
|
PkDrew · AND运算符“&”在“&tee”中的作用是什么? 1 年前 |
|
|
elbarna · 正则表达式仅排除小写字符串,但保存包含大写的字符串 1 年前 |
|
Harry · 使用“$!”获取后台作业的pid 1 年前 |
|
|
nmr · 使用来自另一个shell脚本的if语句的返回码函数 1 年前 |
|
minseong · Git sed忽略二进制文件 1 年前 |
|
|
Jesper.Lindberg · 检查参数是否包含null 1 年前 |