Comment puis-je remplacer l' file exists:
avertissement de zsh?
> echo > newfile.txt
> echo > newfile.txt
zsh: file exists: newfile.txt
Dans ces cas, je préfère que mon shell ne se plaint pas et écrase simplement le fichier, comme bash.
De même, comment remplacer les éléments suivants:
$ ls >> /tmp/testfile.txt
zsh: no such file or directory: /tmp/testfile.txt
zsh
io-redirection
fifi finance
la source
la source
set +C
devrait être plus long pour un commentaire. Mais c'est peut-être parce que je n'ai pas mentionné>|
un cas à usage unique.Réponses:
Est-ce que votre
setopt
sortie mentionnenoclobber
? Si oui, c'est tout, justesetopt clobber
La documentation de l'option se trouve à http://zsh.sourceforge.net/Doc/Release/Options.html#index-file-clobbering_002c-allowing
la source
Vous pouvez forcer le ZSH à clobber lors de la redirection avec:
ou
la source
D'autres ont recommandé d'utiliser
>!
ou>>!
mais ce ne sont pas des standards POSIX. La manière compatible POSIx d'écraser des fichiers sans invite est d'utiliser>|
ou>>|
et cela fonctionnera dans n'importe quel shell.Pour plus d'informations, voir ici: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_07_02
la source