Answers:
这是bash
一个班轮:
while IFS= read -r line; do [[ $line =~ ^\( ]] && echo "$line"; done <file.txt
在这里,我们正在读取输入的每一行,如果该行以开头(
,则将打印该行。主要测试由完成[[ $i =~ ^\( ]]
。
使用python
:
#!/usr/bin/env python2
with open('file.txt') as f:
for line in f:
if line.startswith('('):
print line.rstrip()
在此line.startswith('(')
检查行是否以开头(
,如果是,则打印行。
awk '/^\(/' testfile.txt
结果
$ awk '/^\(/' testfile.txt
(((jfojfojeojfow
(((jfojfojeojfow
作为python一线式:
$ python -c 'import sys;print "\n".join([x.strip() for x in sys.stdin.readlines() if x.startswith("(")])' < input.txt
(((jfojfojeojfow
(((jfojfojeojfow
或者:
$ python -c 'import sys,re;[sys.stdout.write(x) for x in open(sys.argv[1]) if re.search("^\(",x)]' input.txt
look
是经典,但鲜为人知的Unix程序,从而出现了AT&T的Unix版本7.从归途一个man look
:
look实用程序显示文件中包含字符串作为前缀的任何行
结果:
$ look "(" input.txt
(((jfojfojeojfow
(((jfojfojeojfow