Je cherche quelque chose de similaire à indent mais pour les scripts (bash). Console uniquement, pas de colorisation, etc.Joli-print pour script shell
Connaissez-vous un?
Je cherche quelque chose de similaire à indent mais pour les scripts (bash). Console uniquement, pas de colorisation, etc.Joli-print pour script shell
Connaissez-vous un?
Vim peut indenter des scripts bash. Mais ne pas les reformater avant d'indenter.
Sauvegardez votre script bash, ouvrez-le avec vim, tapez gg=GZZ
et le retrait sera corrigé. (Note pour les impatients: cela écrase le fichier, alors assurez-vous de faire cette sauvegarde!)
Cependant, quelques bugs avec <<
(attendant EOF comme premier caractère sur une ligne) par exemple.
EDIT: ZZ ne ZQ
Ah mec! +1000 si je pouvais. – Jamie
trouvé ce http://www.linux-kheops.com/doc/perl/perl-aubert/fmt.script. Très bien, une seule chose que j'ai retirée est la [...] -> substitution de test.
Le lien que vous avez posté n'est plus accessible. – Myz
En bash je fais ceci:
source <(echo "Zibri() {";cat script_to_be_reindented.sh; echo "}")
declare -f Zibri| cut -c 5-|head --lines=-1|tail --lines=+3
ce qui élimine les commentaires et réindentera le script "façon bash". il ne fonctionnera pas si le script contient Heredoc mais si vous faites ceci:
source <(echo "Zibri() {";cat script_to_be_reindented.sh; echo "}")
declare -f Zibri|head --lines=-1|tail --lines=+3
il fonctionnera avec un script, mais le script entier sera en retrait par 4 espaces. N'hésitez pas à modifier mais citez mon nom dans votre script et postez le! : D
Pensez également à mettre vos réponses dans [cette question plus générale] (http://stackoverflow.com/questions/3923301/what-applications-do-you-know-of-that-can-reformat-code) – Benoit