
我製作了 bash 腳本來自動將瀏覽器擴充功能打包到.zip
存檔中,但由於某種原因,除了當前目錄(public
資料夾manifest.json
和index.html
)中的內容之外,它還打包mcm_extension
資料夾(上層資料夾)以及其中的當前資料夾以及其中的全部內容。因此我的結論是:
mcm_extension/
-{current folder name}/
--public/
--manifest.json
--index.html
public/
manifest.json
index.html
代替
public/
manifest.json
index.html
在mcmc.zip
和mcmf.zip
.這是腳本:
# Removes .DS_Store files from a project
find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch
# Creates directories of extension if they don't exist already
mkdir -p ../mcm_extension && mkdir -p ../mcm_extension/mcmc && mkdir -p ../mcm_extension/mcmf
# Google Chrome
cp -R /Users/apple/Development/mcm/public/ /Users/apple/Development/mcm_extension/mcmc/public/
cp /Users/apple/Development/mcm/manifest.json /Users/apple/Development/mcm_extension/mcmc/manifest.json
cp /Users/apple/Development/mcm/index.html /Users/apple/Development/mcm_extension/mcmc/index.html
cd /Users/apple/Development/mcm_extension/mcmc/
zip -r /Users/apple/Development/mcm_extension/mcmc.zip *
# Mozilla Firefox
cp -R /Users/apple/Development/mcm/public/ /Users/apple/Development/mcm_extension/mcmf/public/
cp /Users/apple/Development/mcm/manifestff.json /Users/apple/Development/mcm_extension/mcmf/manifest.json
cp /Users/apple/Development/mcm/index.html /Users/apple/Development/mcm_extension/mcmf/index.html
cd /Users/apple/Development/mcm_extension/mcmf/
zip -r /Users/apple/Development/mcm_extension/mcmf.zip *
答案1
.
目前目錄和父目錄分別由和引用..
。
因此,要壓縮僅不包括目前目錄和父目錄的內容,請嘗試下列操作
zip -r /path_to_folder/* -x .. -x .
僅排除父目錄並保留目前目錄嘗試
zip -r /path_to_folder/* -x ..
-x
選項用於在壓縮時排除檔案或目錄zip
。