GNU/Linux >> Znalost Linux >  >> Linux

Rsync Exclude Folder nefunguje?

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í.


Linux
  1. Linux – LED dioda Caps Lock na konzoli Linux nefunguje?

  2. Instalace/aktualizace skladatele nefunguje

  3. XFS růst nefunguje

  1. Linuxový příkaz 'll' nefunguje

  2. tmux Ctrl+B nefunguje

  3. Vazby kláves Tmux nefungují

  1. Linux – sluchátka nefungují Linux Mint 18?

  2. Obnovení oddílu Ecryptfs pomocí Ecryptfs-recover-private nefunguje?

  3. sudo nefunguje na určitých příkazech