Как составить список содержимого сжатых файлов в режиме иерархии?
Считайте, что у нас есть файл с именем XX.zip
Используйте команду zipinfo -1 XX.zip
который показывает ниже содержание:
XX/
XX/X-Data.txt
XX/YY/
XX/YY/Zero.txt
Я хочу вместо вывода, предположим, что мы распаковали ZIP-файл unzip XX.zip
а затем используйте команду tree XX
заданный вывод:
XX
├── X-Data.txt
└── YY
└── Zero.txt
Один из способов сделать это - написать команду bash для создания иерархической структуры:
makefile ()
{
while read path; do
dir=${path%/*}
filename=${path##*/}
mkdir -p $dir
if [ -n $filename ]; then
touch $path
fi
done
}
А затем используйте команды ниже
zipinfo -1 XX.zip | makefiletree
tree XX
rm -rf XX
Есть ли удобный способ сделать? любые комментарии будут оценены.