フォルダ構造:
etc (dir)
deploy (dir)
src (dir)
config (dir)
dist
├- config (dir)
├- index.js
私が望むのは、ルート設定フォルダを除くすべてをパッケージ化して.tarファイルに入れることですdeploy
。このdist/config
フォルダが出力に表示されることは非常に重要です。次から始めましょう:
tar -czf deploy/deploy.gz --exclude=deploy --exclude="./config/" ./*
$ l ./deploy/deploy0/dist
index.js
router.js
test
しかし、これが原因ですdist/config
。私ができる唯一の方法dist/config
は、configという名前のエントリを除外しないことです。
tar -czf deploy/deploy.gz --exclude=deploy ./*
$ l ./deploy/deploy1/dist
config
index.js
router.js
test
OSXとCentOS(開発とビルド)。その人のためにアスファルトこれは不可能だと思います。
ビルド環境にあり、ファイルは使い捨てのため、不要なフォルダを削除してこの問題を解決しました。
ベストアンサー1
find
少し長くなりますが、次のように引数を作成できます。
find -mindepth 1 ! -wholename './config' ! -wholename './config/*'
mindepth 1
除外.
とwholename
ディレクトリ自体とその内容の2つの除外。
tar -xzf deploy/deploy.gz --exclude="deploy" \
$( find -mindepth 1 ! -wholename './config' ! -wholename './config/*' )