2016-05-31 2 views
0

zip 파일을 포함 할 수도 있고 포함하지 않을 수도있는 일련의 하위 디렉토리가 있습니다.이 zip 파일에는 필요한 단일 행 .txt 파일이 있습니다. find와 unzip -p의 조합을 사용하여 동일한 출력 행에서 파일 경로와 단일 행 내용을 나열 할 수 있습니까? 결과를 .txt로 저장하고 Excel에서 가져 와서 작업하고 싶습니다.zip 파일, 인쇄 경로 및 zip 내용 찾기

find . -name 'file.zip' -exec unzip -p {} file.txt \; 

가 어떻게이 압축 해제 명령의 출력을 찾기 출력 (즉, 파일 경로)를 앞에 수 주 내가 성공적으로 찾을 수있는 디렉토리를 출력 한 줄에서

? 이상적으로 텍스트 파일의 각 줄을 다음과 같이 작성하고 싶습니다.

./path/to/file1.zip "Single line of file1.txt file" 
./path/to/file2.zip "Single line of file2.txt file" 

등등. 누구든지 몇 가지 제안을 할 수 있습니까? 나는 아주 간단한 명령어가 아닌 리눅스 커맨드 라인에 익숙하지 않다.

감사합니다.

답변

0

지금 즉

cat finder.bash 
#!/bin/bash 

printf "[email protected] : " # prints just the /path/to/file/file.zip 
unzip -p "[email protected]" file.txt 

당신이 쉘 스크립트를 호출 할 exec 기능을 사용하여 다음 쉘 스크립트로 실행하고자하는 모든 코드를 넣고, 그 일을 얻을, 당신이하는 것이 일반적인 만들 수 있습니다 나중에 file.txt 외에 다른 사람을 전달하십시오.

chmod 755 finder.bash 

find에서 호출 스크립트 실행을합니다. 즉

find . -name 'file.zip' -exec /path/to/finder.bash {} \; 

(쉬운 테스트 방법이 없으므로 오류 메시지와 함께 답장에 답장하십시오.)