tarball의 내용을 트리 형식으로 나열 -tf foo.tar foo/ foo/baz/ foo/baz/qux/ foo/baz/qux/hisfile.txt foo/bar/ foo/bar/myfile.txt foo/bar/yourfile.txt 로 tree: $ tree foo foo ├── bar │   ├──

여기 에 대한 답변 에 따라 내 tarball의 내용을 ls형식 으로 나열 할 수 있습니다. 그러나 나는 그것들을 tree형식 으로 나열 할 수 있기를 원합니다 .

tar:

$ tar -tf foo.tar
foo/
foo/baz/
foo/baz/qux/
foo/baz/qux/hisfile.txt
foo/bar/
foo/bar/myfile.txt
foo/bar/yourfile.txt

tree:

$ tree foo
foo
├── bar
│   ├── myfile.txt
│   └── yourfile.txt
└── baz
    └── qux
        └── hisfile.txt

타르볼을 추출하지 않고이 작업을 수행 할 수 있습니까? 나는 그들의 크기 때문에 타르볼을 추출하는 것을 피하고 싶습니다.



답변

경로 이름 목록을 트리 형식으로 변환하기위한 여러 스크립트가 있습니다.

이 모든 스크립트는 tar -tf …출력 과 함께 작동 합니다. 예를 들면 다음과 같습니다.

$ tar -tf foo.tar | Treeify
푸
 ├─ 바
 │ ├─myfile.txt
 │ └─yourfile.txt
 └─ 바즈
    └─qux
       └─hisfile.txt

또한:

$ bsdtar -tf foo.zip | treeify
$ find /dir -size +5 | treeify
$ git ls-files       | treeify
$ pacman -Qql foopkg | treeify
$ unrar vb foo.rar   | treeify
$ zipinfo -1 foo.zip | treeify
$ gsettings list-schemas   | treeify -s. -f
$ qdbus | sed -n "s/^ //p" | treeify -s. -f
$ ldns-walk netbsd.org | awk '{print $1}' | treeify -s. -f -R