如何只查看tar.gz压缩文件中顶层目录的列表

例如使用了如下命令会列出所有的文件:

$ tar -tf udpSocket.tar 
udpSocket/
udpSocket/clientUdp
udpSocket/clientUdp.c
udpSocket/makefile
udpSocket/serverUdp.c
udpSocket/serverUdp.h
udpSocket/serverUdp.o
udpSocket/singLinklistUdp
udpSocket/singLinklistUdp.c
udpSocket/singLinklistUdp.o

使用什么命令,才能只显示顶层的目录列表。如下,我只需要如下的信息:

udpSocket/
阅读 16.9k
3 个回答

方法一:

tar -tf udpSocket.tar | awk -F "/" '{print $1}' | sort | uniq

方法二:

tar -tf udpSocket.tar | awk -F "/" '{print $1}' | tail -n 1

方法三:

tar -tf udpSocket.tar | awk -F "/" '{print $1}' | sed -n '1p'
新手上路,请多包涵
tar -tf udpSocket.tar | awk -F "/" '{print $1}'

只有一个文件夹:

tar tf udpSocket.tar | head -1

可能多个文件夹:

tar tf udpSocket.tar --exclude='*/*'
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题