如何在Unix平台上的文件中grep标签(\t) ?
当前回答
多次查找空格[[:space:]]*
grep[:太空 :]]*'.''.'
会发现这样的东西:
“账单”..
这些是单引号('),而不是双引号(")。这就是在grep中进行连接的方法。= -)
其他回答
诀窍是在单引号前使用$符号。它也适用于切割和其他工具。
grep $'\t' sample.txt
使用gawk,将字段分隔符设置为TAB (\t)并检查字段的数量。如果多于1,则有/有制表符
awk -F"\t" 'NF>1' file
一种方法是(这是Bash)
grep -P '\t'
-P将打开Perl正则表达式,因此\t将工作。
正如用户unwind所说,它可能是特定于GNU grep的。另一种方法是在shell、编辑器或终端允许的情况下插入一个制表符。
答案更简单。编写grep并在引号中输入tab键,它至少在ksh中工作得很好
grep " " *
一个好的选择是使用sed。
sed -n '/\t/p' file
示例(工作在bash, sh, ksh, csh,..):
[~]$ cat testfile
12 3
1 4 abc
xa c
a c\2
1 23
[~]$ sed -n '/\t/p' testfile
xa c
a c\2
[~]$ sed -n '/\ta\t/p' testfile
a c\2
(以下答案已根据评论中的建议进行了编辑。谢谢大家)
推荐文章
- 在Windows中有像GREP这样的模式匹配实用程序吗?
- 如何从命令行将每两行合并为一行?
- 如何从命令行通过mysql运行一个查询?
- 在创建守护进程时执行双fork的原因是什么?
- 匹配前后的Grep字符?
- (grep)正则表达式匹配非ascii字符?
- 如何从另一个文件A中删除文件B中出现的行?
- 对以制表符分隔的文件进行排序
- 如何使用查找命令从列表中查找所有具有扩展名的文件?
- 如何将文件指针(file * fp)转换为文件描述符(int fd)?
- 在Bash中获取日期(比当前时间早一天)
- Linux: kill后台任务
- 在OSX中永久设置PATH环境变量
- PowerShell等价于grep -f
- 如何在C程序中获取当前目录?