我正在尝试剪切并粘贴制表符分隔文件,并以这种方式使用unix中的剪切和粘贴实用程序:
cut -f 1-66 file1 > file1a
cut -f 68- file1 > file1b
paste file1a file1b
但是我想知道是否有办法使用-F命令在Perl / Ruby中执行它,因为从长远来看这可能会更快。例如
perl -F/\\t/ -ane
for every line in document
for i (0..66) and (67..Last field in line)
print $[i]
end
print \n
end
答案 0 :(得分:4)
您的原始代码似乎缺少某些重定向。
怎么样:
cut -f1-66,68- input > output
我认为perl或ruby不太可能比这更快。
答案 1 :(得分:4)
Perl可以这样工作:
perl -F/\\t/ -ane 'print join("\t", @F[0..66,68..$#F])'
@F
包含字符串的一部分,$#F
包含@F
中最后一个元素的索引