关于shell-script:shell脚本-逐个压缩文件夹内所有文件和文件夹
Linux下通过zip命令一一压缩某文件夹下的子文件夹和文件(反对文件名中带空格场景): filename : zipfolder #!/bin/bashIFS=$'\n'for file in ` ls -1 $1 `do if [[ ${file} == *".zip" ]] then echo " skipped: ${file}" else zip -r "$1/${file}.zip" "$1/${file}" fidone示例: 执行前: MyMacBook-Pro:~ root$ find /Users/root/targetfolder -print | sed -e 's;1*/;|____;g;s;____|; |;g'| | |____targetfolder| | | |____file1.txt| | | |____folder1| | | | |____2.txt| | | |____zipfile.zip执行: MyMacBook-Pro:~ root$ ./zipfolder /Users/root/targetfolder adding: /Users/root/targetfolder/file1.txt (deflated 33%) adding: /Users/root/targetfolder/folder1/ (stored 0%) adding: /Users/root/targetfolder/folder1/2.txt (deflated 33%)Skipped: zipfile.zip执行后: ...