각각 자체 zip 아카이브가 있는 여러 폴더를 백그라운드에서 압축하는 방법은 무엇입니까?

각각 자체 zip 아카이브가 있는 여러 폴더를 백그라운드에서 압축하는 방법은 무엇입니까?

폴더를 자체 zip 파일로 압축하는 좋은 방법은 다음 루프를 이용하는 것입니다.

for i in */; do zip -r "${i%/}.zip" "$i"; done

하지만 백그라운드에서 모든 작업을 수행하고 싶지만(예: nohup &) 제대로 작동할 수 없습니다. 어떻게 해야 하나요?

답변1

예를 들어 명령을 쉘 스크립트로 실행할 수 있습니다.

nohup sh -c 'for i in */; do zip -r "${i%/}.zip" "$i"; done' &

답변2

요청은 병렬로 압축됩니다.

nohup sh -c 'for i in */; do zip -r "${i%/}.zip" "$i" & done' &

그러면 각 하위 디렉터리에 대한 zip이 시작됩니다. 이러한 작업은 그 자체가 배경인 공통 nohup에서 시작됩니다.

관련 정보