J'essaye de renommer tous les fichiers dans le répertoire courant de sorte que le nom de majuscule soit converti en plus bas. Je suis en train de le faire comme ceci:xargs pour exécuter une chaîne - qu'est-ce que je fais mal?
ls -1|gawk '{print "`mv "$0" "tolower($0)"`"}'|xargs -i -t eval {}
J'ai deux fichiers dans le répertoire, Y et YY -t ajouté pour le débogage et la sortie est:
eval `mv Y y`
xargs: eval: No such file or directory
si je l'exercerai eval seul, cela fonctionne et déplace Y à y.
Je sais qu'il existe d'autres façons d'y parvenir, mais j'aimerais bien que cela fonctionne si je le peux! Vive
OK, merci - qui fonctionne. Un peu plus que je ne le pensais. –
Réalisé vous n'avez pas besoin de l'eval (ou des 's ') avec cette méthode. donc ls -1 | gawk '{print "mv" $ 0 "" tolower ($ 0)}' | xargs -i -t sh -c "{}" fonctionne aussi bien –