파일을 폴더로 이동하고 폴더를 압축합니다.

파일을 폴더로 이동하고 폴더를 압축합니다.

폴더 A에서 일부 파일을 개별적으로 압축한 다음 동일한 디렉터리의 폴더 B로 이동해야 하는데 시간이 많이 걸립니다. 그래서 압축할 파일을 모두 새 폴더(c)로 옮기고, 압축해서 B폴더로 옮기자고 생각했습니다. 몇 가지 명령으로 이를 수행할 수 있습니까? 제안을 환영합니다.

답변1

쉘 유형 스크립트가 도움이 될 수 있습니다.

enter code here
  mv <file.a>...<file.n> <new_folder>
  zip -r <new_folder>
  mv new_folder.zip /destination_folder

답변2

cp -R (the path of the folder to copy) (the name of the copied file)

그 다음에

zip -r (name your zip) (the name of the copied file)

예시 시나리오: WordPress에 설치된 플러그인을 복사하고 압축하고 싶다고 가정해 보겠습니다(WordPress의 루트 폴더에 있을 때).

나는 그것을 할 것이다:

cp -R wp-content/plugins plugins_backup

그런 다음 확인하려면 다음을 수행하십시오.

ls -la

새 디렉토리를 보겠습니다.플러그인 백업, 압축하겠습니다.

zip -r plugins_backup.zip plugins_backup

준비해. (그런 다음 mv의 답변을 따라 어디로든 이동하십시오.)

답변3

어쨌든 나는 ZIP 파일에 대한 FUSE 플러그인 지원에 대해 알지 못했습니다. 이를 통해 사용자는 마치 읽기/쓰기 파일 시스템인 것처럼 ZIP 파일을 마운트(또는 생성)할 수 있습니다.

먼저 .zip으로 끝나는 새(빈) 파일을 생성하고 /mnt에 마운트합니다. ZIP 파일을 폴더_B에 넣기를 원하므로 여기에 생성하겠습니다.

# rm -f /folder_B/my_files.zip
# fuse-zip /folder_B/my_files.zip /mnt

귀하의 게시물이 불분명하지만 .ZIP 파일에 폴더_C가 포함되고 모든 파일이 여기에 상주하기를 원하는 것 같습니다. 따라서 /mnt의 .ZIP 파일 내에 폴더_C를 생성합니다.

# mkdir /mnt/folder_C

이제 폴더_A로 이동하여 압축하려는 모든 파일을 /mnt/folder_C로 이동하세요.

# cd /folder_A
# mv file1 file2 ... fileN /mnt/folder_C

마지막으로 ZIP 파일을 제거하고 검사합니다.

# umount /mnt
# unzip -v /folder_B/my_files.zip

복잡해 보이지만 기본 네 단계는 다음과 같습니다.

# fuse-zip /folder_B/my_files.zip /mnt
# mkdir /mnt/folder_C
# mv /folder_A/file1 /folder_A/file2 ... /folder_A/fileN /mnt/folder_C
# umount /mnt

나는 이 접근 방식이 다른 솔루션보다 더 좋다 나쁘다를 말하는 것이 아니라 단지 다른 접근 방식일 뿐입니다. 나는 당신이 그것을 흥미롭게 느끼기를 바랍니다.

관련 정보