bash – 列出tar文件或目录的内容只有一些级别

前端之家收集整理的这篇文章主要介绍了bash – 列出tar文件或目录的内容只有一些级别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我不知道如何列出一个tar文件内容只有一些级别?

我理解tar tvf mytar.tar将列出所有文件,但有时我只想看到目录到一些级别。

类似地,对于命令ls,如何控制将显示的子目录的级别?默认情况下,它只显示直接的子目录,但不进一步。

tar tvf scripts.tar | awk -F/ '{if (NF<4) print }'


drwx------ glens/glens       0 2010-03-17 10:44 scripts/
-rwxr--r-- glens/www-data 1051 2009-07-27 10:42 scripts/my2cnf.pl
-rwxr--r-- glens/www-data  359 2009-08-14 00:01 scripts/pastebin.sh
-rwxr--r-- glens/www-data  566 2009-07-27 10:42 scripts/critic.pl
-rwxr-xr-x glens/glens     981 2009-12-16 09:39 scripts/wiki_sys.pl
-rwxr-xr-x glens/glens    3072 2009-07-28 10:25 scripts/blacklist_update.pl
-rwxr--r-- glens/www-data 18418 2009-07-27 10:42 scripts/sysinfo.pl

确保注意,数字是3,但是你想要多个级别,因为/在用户名/组。如果你只是做

tar tf scripts.tar | awk -F/ '{if (NF<3) print }'

scripts/
scripts/my2cnf.pl
scripts/pastebin.sh
scripts/critic.pl
scripts/wiki_sys.pl
scripts/blacklist_update.pl
scripts/sysinfo.pl

它只有两个。

你可能管道ls -R的输出到这个awk脚本,并有相同的效果

猜你在找的Bash相关文章