Различный счет для сжатого списка файлов против каталога

Я делал резервную копию папки, где я использовал следующую команду:

sudo tar -zcvf www.tar.gz /var/www/

Он успешно сжат, просто для проверки количества файлов в сжатом архиве, и в каталоге я выполнил следующие команды:

sudo tar -ztvf www.tar.gz | wc -l sudo tar -ztvf www.tar.gz | wc -l -> 186364

ls -R /var/www | wc -l ls -R /var/www | wc -l -> 196440

Почему счет отличается, что мне не хватает?

Посмотрите на выход без трубопровода на wc чтобы увидеть разницу

 $ ls -R www | cat www: dir1 dir2 file1 www/dir1: file1 www/dir2: file1 file2 $ ls -R www | wc -l 11 

А также

 $ tar xvfz www.tar.gz www/ www/dir1/ www/dir1/file1 www/dir2/ www/dir2/file1 www/dir2/file2 www/file1 $ tar xvfz www.tar.gz |wc -l 7 

ls -R просто производит еще несколько выходных данных.

ls -R помещает в вывод некоторые дополнительные пустые строки, из-за чего счетчик увеличивается.

Вы можете протестировать его, выполнив команду ls -R не подключив ее к wc -l

Используйте команду tree

 tree -i |tail 

это даст вам количество папок и файлов в определенной папке.