2010-05-24 8 views
2

J'essaie d'imprimer les arguments transmis à un script ./configure. Appeler 'echo' sur $ BASH_ARGV affichera simplement le dernier ensemble d'arguments. Par exemple, si je lance:Comment imprimer les arguments passés pour configurer le script?

./configure --enable-foo --enable-bar

echo $ BASH_ARGV imprimera seulement "--enable-bar"

Comment puis-je imprimer toutes les arguments? Merci!

+0

BASH_ARGV est clairement spécifique à bash. Les scripts de configuration doivent être compatibles Bourne. – alternative

+0

Comment cela se ferait-il via Bourne Shell? – Sam

+0

Pouvez-vous les obtenir à partir de 'config.log'? Je viens de vérifier et les arguments sont affichés là. –

Répondre

1

Il existe une variable appelée ac_configure_args qui contient ce dont j'ai besoin. Merci à tous pour l'aide.

2

Vous pouvez utiliser $ @ et $ * pour faire référence à des paramètres.

echo "[email protected]"; devrait le faire. Un peu plus d'informations here

+0

Cela ne semble pas fonctionner. En écho $ @ produira juste 'make factice' – Sam

+0

utilisez-vous les guillemets doubles? –

+0

oui j'ai utilisé les guillemets – Sam

0

Puisqu'il est un tableau, vous devez faire pour obtenir tous les éléments:

echo ${BASH_ARGV[@]} 

ou utiliser une boucle pour itérer sur eux.

Remarque: ils seront sortis dans l'ordre inverse.

Questions connexes