답변:
일반적으로 아카이브를 만드는 동안 루트 부분 을 유지 tar
하려면 --absolute-names
또는 --absolute-paths
옵션이 필요합니다 '/'
. 그런 식으로 강제하더라도 추출은 선행을 건너 뜁니다 '/'
.
그러나 행간을 가진 아카이브가 '/'
있고 추출하는 동안 tar를 건너 뛰지 않으면 NoahD의 답변이이 형식으로 작동해야합니다.
pax -r -s ',/mnt,/new/path,' -v -f 13.2.tar
내 생각 엔 pax
당신이로 압축 해제 한 후 파이프에 필요하므로, 압축 파일을 처리하지 않습니다 pax
.
이것은 다음과 같이 진행됩니다 (아직 압축 된 아카이브가 있다고 가정)
gunzip -c 13.2.tar.gz | pax -r -s ',/mnt,/new/path,' -v
방금 구글 에서이 위키 페이지 를 찾았습니다 .
표준 (일명 명시 적)과 상대 (암시 적이라고 부르는 것)의 차이점 /
은 처음에 를 사용하는지 여부 입니다.
예를 들어, 현재 작업 디렉토리가 /usr/home/bob
인 경우 다음 명령은 동일한 효과를 갖습니다.
tar -xvf foo.tar * tar -xvf ./foo.tar * tar -xvf ./foo.tar ./* tar -xvf /usr/home/bob/foo.tar * tar -xvf /usr/home/bob/foo.tar ./* tar -xvf /usr/home/bob/foo.tar / usr / home / bob / *
그러나 나는 이것이 당신의 질문이 아니라고 생각합니다. 디스크 사용량을 결정하고 가득 차지 않은 디렉토리를 찾아야하는 것처럼 보입니다. 이 df
명령 으로 수행 할 수 있습니다 .
df -k # space on disk in kilobytes
df -m # as above, but in meg
df -g # as above, but in gig
또한 mount
어떤 장치에 어떤 파일 시스템이 마운트되어 있는지 보여줄 수 있습니다.