아카이브에 포함된 .zip을 추출하지 않고 아카이브에 있는 특정 파일의 내용을 어떻게 읽을 수 있습니까? 저는 Linux 명령줄을 사용하고 있습니다.
이전질문아카이브의 디렉토리를 보는 것에 대해 묻습니다. 하지만 나에게는 아카이브에 있는 파일 목록만 보는 것만으로는 충분하지 않습니다. 아카이브에 있는 파일의 내용을 확인해야 합니다.
답변1
unzip -l archive.zip
파일이 내부에 있는지 확인하기 위해 ZIP 아카이브의 내용을 나열합니다.
-p
전체 아카이브의 압축을 풀지 않고도 명명된 파일의 내용을 stdout(화면)에 쓰려면 옵션을 사용하십시오 .
unzip -p archive.zip file1.txt | less
이런 종류의 작업에서는 항상 출력을 으로 파이프합니다 less
. 그렇지 않으면 전체 파일이 읽기 전에 화면 위로 날아갑니다.
BTW zcat은 먼저 압축을 풀지 않고도 .gz 파일의 내용을 보는 데 적합합니다.
편집하다:-p
대신 사용하도록 이 답변을 변경했습니다 -c
. -p
파일을 바이트 단위로 추출하는 동시에 -c
파일 이름을 인쇄하고 EOL 변환을 수행할 수 있습니다. 또한 unzip -p
여러 파일을 추출할 수 있지만, 주어진 순서대로 출력되지는 않습니다 cat
.
답변2
답변3
zipinfo
unzip
사용할 수 있는 또 다른 도구입니다. 이는 허용되지 않는 잠긴 시스템에 있는 경우 유용합니다 .
답변4
Emacs
명령줄에서 시작 하고 Zip-Archive
모드로 zip 파일을 엽니다. Emacs/elisp 조정 없이(신규 사용자는 일반적으로 두려워함) zipinfo
모드, 길이, 날짜, 시간과 같은 파일 세부 정보를 볼 수 있습니다 .
그런 다음 표준 단축키를 사용하여 버퍼에 있는 파일을 열 수 있고 변경 사항을 다시 아카이브에 저장할 수도 있습니다.
- 목록에 있는 파일 이름을 입력하여 엽니다.
- 편집 및 저장
Ctrl-x Ctrl-s
- 버퍼를 종료하여
Ctrl-k
아카이브 버퍼로 돌아가 계속 진행합니다.
Zip-Archive
버퍼 에 있을 때 Ctrl-h m
도움말 보기에서 사용할 수 있는 모든 바로가기를 가져오는 데 사용합니다.
이를 통해 Emacs의 놀라운 기능을 발견할 수 있기를 바랍니다.