09 2015 档案
摘要:通常shell中我们需要给变量设置默认值,可能会写出如下代码Shell代码 #!/bin/bashif[!$1];then$1='default'fi显然这种方式在变量少的时候没啥问题,一旦变量多起来,我们可能就有大量的重复劳动(if判断)有没有比较优雅的方式,不用写一大堆if判断,显然答案是有的1...
阅读全文
摘要:就是用了@smlg提到的LCS。我用伪CoffeeScript代码翻译下吧:首先我们把文件old、new转化为两个列表,列表的每个元素是文件的某一行:A = [1行、2行、3行、4行、...]B = [1行、2行、3行、4行、...]然后我们计算A和B最长的相似元素的长度lcs(递归就是力量)lcs...
阅读全文
摘要:NR表示从awk开始执行后,按照记录分隔符读取的数据次数,默认的记录分隔符为换行符,因此默认的就是读取的数据行数,NR可以理解为Number of Record的缩写。 在awk处理多个输入文件的时候,在处理完第一个文件后,NR并不会从1开始,而是继续累加,因此就出现了FNR,每当处理一个新文件...
阅读全文
摘要:详解著名的awk Oneliner,第三部分:选择性输出特定行输出文件的前10行(模拟 head -n 10 )awk ' NR 1 { exit }; 1' 这个例子与前一个很相似,中心思想就是第二行就退出。输出文件的最后两行(模拟 tail -n 2 )awk '{ y=x "\n" $0; ...
阅读全文
摘要:head-n, --lines=[-]K print the first K lines instead of the first 10; with the leading ‘-’, print all but the last K lines of each filetai...
阅读全文

浙公网安备 33010602011771号