Bash 列出并删除存档中的目录
我想知道如何在归档文件中列出内容并从中删除一些目录 例如,我有一个归档文件data.tarBash 列出并删除存档中的目录,bash,archive,Bash,Archive,我想知道如何在归档文件中列出内容并从中删除一些目录 例如,我有一个归档文件data.tar 我想列出它的内容而不提取它。是否可以控制查看目录的级别?我的意思是,不一定是所有的文件,而是路径的某个层次 我还想从中删除一些与*/count1000匹配的目录 要查看tar文件的内容 tar tvf mytar.tar 要提取文件 tar xvf mytar.tar myfile.txt 删除文件 tar -f mytar.tar --delete */count1000 可以使用以下工具剥离第一
我想列出它的内容而不提取它。是否可以控制查看目录的级别?我的意思是,不一定是所有的文件,而是路径的某个层次 我还想从中删除一些与*/count1000匹配的目录
要查看tar文件的内容
tar tvf mytar.tar
要提取文件
tar xvf mytar.tar myfile.txt
删除文件
tar -f mytar.tar --delete */count1000
可以使用以下工具剥离第一个路径组件:
cat myarchive.tar.gz | tar -tzf - | grep --only-matching -e "/.*"
cat myarchive.tar.gz | tar -tzf - | grep --only-matching -e "/.*/.*"
可以使用以下工具剥离第二路径组件:
cat myarchive.tar.gz | tar -tzf - | grep --only-matching -e "/.*"
cat myarchive.tar.gz | tar -tzf - | grep --only-matching -e "/.*/.*"
等等。如何从中删除一些与*/count1000匹配的目录。是否可以控制目录的级别以供查看?我的意思是,不一定是所有的文件,而是路径的某个层次。蒂扬克斯