显示隐藏文件命令

问题描述 投票:3回答:3

嘿fellas我在这里有这个命令qazxsw poi,它显示了cwd中隐藏文件的数量。

  • 1st qustion为什么上面的命令与ls -la | egrep '^-' | egrep '^([^ ]+[ ]+){8}[.]' | wc -l具有相同的输出我的意思是,删除多个空格如何在不编写适当命令的情况下完成?
  • 此外,我不理解100%的第二个egrep的行动,有人解释我的分离它取悦。
unix
3个回答
1
投票
  1. tr -s'': - 它只会压缩空间。 ls -la将所有文件和目录以及文件逐行列出。 所以输出没有变化,因为,tr命令不会抑制任何新行。

2.

在开始时,输入行确实包含除空格之外的任何字符,之后它包含一个或多个空格,这是在组中。所以像这样的8组必须在那之后才需要。(点)。

例:-

egrep匹配以下行。

ls -la | egrep '^-' | tr -s ' ' |  egrep '^([^ ]+[ ]+){8}[.]' | wc -l

以下行不匹配。

drwxxr---x 1 sureshkumar sureshkumar  4096 May 12 10:21 .
drwxxr---x 1 sureshkumar sureshkumar  4096 May 12 10:21 ..

只需egrep匹配隐藏的文件和目录。


1
投票

让我们一个接一个。

  1. -rw-rw-r-- 1 sureshkumar sureshkumar 6361 May 12 17:30 1.c -rwxrwxr-x 1 sureshkumar sureshkumar 12093 May 12 17:30 a.out -rw-rw-r-- 1 sureshkumar sureshkumar 0 May 12 17:30 a.txt -rw-r--r-- 1 sureshkumar sureshkumar 34326 May 12 10:58 ping.c -rw-r--r-- 1 sureshkumar sureshkumar 24951 May 12 15:48 ping_common.c -rw-r--r-- 1 sureshkumar sureshkumar 8002 May 11 17:26 ping_common.h 打印出所有文件(包括隐藏文件)并列出其他信息,作为用户权限,空间和最后修改。
  2. 第一个ls -la指定它只打印文件,而不打印目录,因为它表示显示所有以“ - ”开头,以这个符号开头的是文件。
  3. 使用egrep是为了用单个字符替换重复字符的所有实例,在本例中为空格。
  4. 至于最后的tr,它的作用是匹配隐藏的文件和目录,并打印出多少相似的行,这实际上意味着出现的次数,所以它找到了多少次目录和文件的相同名称(对于当然,你当前的目录。

0
投票

在某些情况下,计算隐藏文件的简单方法。

egrep

注意:仅当文件名上没有特殊字符(空格,换行符)时。

echo .*|wc -w

© www.soinside.com 2019 - 2024. All rights reserved.