2017-04-24 1 views
1

Lors de l'exécution d'un simple find et en essayant de -exec quelques commandes sur le résultat je reçois une valeur vide pour {}commande find exec {} dossier correspondant à vide - coquille de poisson

Par exemple:

$ find ~/folder-with-files -exec echo {} \; 

sur un dossier contenant 3 fichiers retourne vide

$ 
$ 
$ 

J'utilise le shell Fish sur MacOS.

+0

Vous vous attendez à un comportement bash. Mais notez que zsh, csh, ksh, et bash se comportent tous différemment en ce qui concerne l'expansion de l'accolade. Voir https://github.com/fish-shell/fish-shell/issues/1109 où nous discutons de la manière dont nous voulons que les poissons se comportent bien qu'un consensus ait été atteint sur le fait qu'un '' '' libre devrait être laissé seul, ala bash . –

Répondre

2

Lorsque vous utilisez la variable shell poisson {} doit être enveloppé dans des citations "{}"

find ~/folder-with-files -exec echo "{}" \; 

Retours correctement dans les deux bash et fish coquilles

$ file1.txt 
$ file2.txt 
$ file3.txt