【发布时间】:2014-09-29 17:49:26
【问题描述】:
我正在尝试获取以 fs 开头的文件列表
我使用了那个命令
ls -l /etc/ | grep ^fs
0 个结果
然后我用那个
ls /etc/ | grep ^fs
得到结果。
我想知道为什么我不能用“-l”得到任何结果
干杯!
【问题讨论】:
标签: linux shell unix terminal grep
我正在尝试获取以 fs 开头的文件列表
我使用了那个命令
ls -l /etc/ | grep ^fs
0 个结果
然后我用那个
ls /etc/ | grep ^fs
得到结果。
我想知道为什么我不能用“-l”得到任何结果
干杯!
【问题讨论】:
标签: linux shell unix terminal grep
看看ls -l 的输出。注意它不是以文件名开头的!
$ ls -l
total 24
-rw-r--r-- 1 cnorum domain users 10338 Sep 16 15:43 file1
drwxr-xr-x 20 cnorum domain users 4096 Sep 26 09:20 dir1
drwxr-xr-x 2 cnorum domain users 4096 Sep 25 14:00 dir2
drwxr-xr-x 2 cnorum domain users 4096 Jul 18 09:56 dir3
你根本不需要 grep - 为什么不只是:
ls -l /etc/fs*
【讨论】:
我想知道为什么我不能用“-l”得到任何结果
因为你逐行发送到 grep
看看这个:
ls -l /etc | grep ^dr
【讨论】:
答案是您在表达式 (^) 中使用了行字符的开头,与 -l 一样,该行不以文件名开头
【讨论】: