Ubuntu Linux: 如何统计目录中某些文件的个数

Ubuntu Linux: How to count the numbers of certain files in a directory

您好,我知道如何使用 linux

计算目录中所有文件的数量
command:ls -l . | egrep -c '^-'.

如果目录中有test_1.jpg, train_1.jpg, test_2.jpg, train_1.jpg .....。我只想统计test_*jpg的个数,不统计这个目录下的train_*.jpg个数。如何使用 Linux 命令来完成。谢谢!

我发现 ls -1 |> wc -l 效果很好。注意是减一而不是减字母 l。

编辑:

因此,在您的情况下 ls -1 test*.jpg | wc -l 应该可行。您可以调整通配符。在这种情况下,它将匹配以 test 开头并以 .jpg.

结尾的任何内容

以下是否适合您:

ls -l *train_*.jpg | egrep -c '^-'.

如果您的所有文件都在同一目录中 dir,以下命令将帮助您。

ll dir/test_*.jpg | wc -l
ls -al dir/test_*.jpg | wc -l

解释:

ls -al dir/test_*.jpg | wc -l

# ll is short for ls -al
# -l    use a long listing format
# -a, --all
#       do not hide entries starting with .

# wc -l print the newline counts.

只要你的文件名不包含空格

a=( test*.jpg ); echo ${#a[@]}

同时检查 shopt nullglob 以检测空列表。