Snažím se zkopírovat soubory yaml v mém projektu do složky dist a zachovat strukturu. Nicméně kopíruje node_modules
kterou nechci. Jak vyloučím pomocí rsync a proč můj níže uvedený příkaz nefunguje?
rsync -R --exclude=node_modules ./**/**.yaml dist
Poznámka:Zkoušel jsem varianty atd.:
rsync -R --exclude= node_modules ./**/**.yaml dist
rsync -R --exclude 'node_modules' ./**/**.yaml dist
struktura mých složek:
projectroot
|--config/file.yaml
|
|--node_modules/somedir/somefile.yaml
|
|--src/somefolder/somefile.yaml
a chci, aby se výše uvedené v mém dist zobrazovalo jako:
dist
|--config/file.yaml
|
|--src/somefolder/somefile.yaml
Přijatá odpověď:
Nakonec jsem šel s:
rsync -avrmR --exclude='node_modules/' --include='*/' --include='*.yaml' --exclude='*' ./ ./dist
Funguje to tak, že nejprve vyloučí cokoli ve složce node_modules, pak zahrne všechny adresáře a poté zahrne pouze soubory yaml a poté vyloučí vše ostatní.