Articles of bash

通过PowerShell / cmd为Linux应用程序调用Windows子系统

随着最近推动Windows内部人员build立14316我们有Linux的Windows子系统(testing版),允许在Windows上运行Ubuntu Linux CLI软件。 它可以通过在Windows PowerShell中运行bash命令或在Windows上的“在Ubuntu上运行Bash”应用程序来启动。 所以,我的问题是关于第一种方式。 我们可以从PowerShell启动bash ,但是没有其他的ubuntu CLI应用程序可用。 你如何做一个工作? 假设我希望zsh可以在不使用bash的情况下启动。

从Bash中另一个更大的文本文件中find文本文件的行的最快方法

我有两个文件, file1.txt和file2.txt 。 file1.txt约有14K行, file2.txt约有20亿。 file1.txt每行有一个字段f1 ,而file2.txt有3个字段,从f1到f3 ,由| 。 我想从file2.txt中find所有行,其中file1.txt f2与file2.txt f2匹配(或者如果我们不想花费额外的时间分割file2.txt的值,则file2.txt )。 file1.txt(约14K行, 未sorting ): foo1 foo2 … bar1 bar2 … file2.txt(约20亿行, 未sorting ): date1|foo1|number1 date2|foo2|number2 date3|foo3|number3 … date1|bar1|number1 date2|bar2|number2 date3|bar3|number3 预期产出: date1|foo1|number1 date2|foo2|number2 date1|bar1|number1 date2|bar2|number2 … 这是我已经尝试过,似乎需要几个小时才能运行: fgrep -F -f file1.txt file2.txt > file.matched 我想知道是否有一个更好,更快的方式来执行这个操作与普通的Unix命令或一个小脚本。