압축된 파일 시스템을 찾고 파일 시스템의 압축을 풀기 위해 출력을 전달하는 것을 찾고 있는데, 이는 압축된 파일 시스템 외부의 절대 경로여야 합니다.
예
/tmp/mnt/live/filesystem.squashfs
원하는 출력
/tmp/unsquashedfs/files
나는 이런 코드 줄을 가지고 장난을 치고 있습니다.
find /tmp/mnt -iname '*.squashfs' -exec unsqaushfs '*.squashfs' {} \;
find /tmp/mnt -print0 -iname "*.squashfs" | unsquashfs "*.squashfs" -T -
하지만 제대로 작동하지 못했습니다. 누구든지 도움을 주시면 대단히 감사하겠습니다!
답변1
당신은 기본적으로 찾고 있습니다
find /tmp/mnt -iname '*.squashfs' -exec unsquashfs {} \;
{}
일치하는 파일의 경로로 대체됩니다.
추출할 디렉터리를 지정하려면 이 -d
옵션을 전달하세요.
find /tmp/mnt -iname '*.squashfs' -exec unsquashfs -d /tmp/unsquashedfs/files {} \;
답변2
그래서 나는 거꾸로 작업하고 있는 것 같고 이것이 나에게 효과가 있는 것 같습니다.
sudo find . -type f \( -name '*.squashfs' -o -name "*.SQFS" \) -exec cp {} /tmp/fs.squashfs \; && sudo unsquashfs /tmp/fs.squashfs
네티즌들의 도움 덕분에 드디어 완성했어요! (다른 매개변수를 검색할 수 있어야 하고 앞으로 더 많은 매개변수를 추가할 수 있어야 합니다)
find /tmp/mnt \( -iname '*.squashfs' -o -iname "*.SQFS" \) -exec unsquashfs -d /tmp/squashfs-root/ {} \;