tcsh - arguments de ligne de Commande commençant par un tiret (-)
J'ai besoin de vérifier le premier argument de ligne de commande pour voir si c'est -cleanup
. Mon code est:
if ( $* != null ) then
if ( "X$argv[$n]" == "X-cleanup" ) then
echo "its cleanup"
J'ai d'abord assurez-vous qu'il ya au moins 1 argument. n
est fixé à 1
au début du programme. Lorsque j'essaie d'exécuter mon script avec -cleanup
comme argument, j'obtiens cette erreur:
if: Malformed file inquiry.
J'ai essayé les solutions les quelques posts sur le forum, j'ai trouvé en ligne, mais je ne peux pas comprendre comment gérer correctement le tableau de bord. C'est un tcsh.
Vous devez vous connecter pour publier un commentaire.
Cet extrait de script a fonctionné pour moi:
Quand je lance
tcsh ./test-cleanup.tcsh -cleanup
produit la sortie suivante:La problématique morceau de code est la ligne suivante. Lorsque
-cleanup
était non cotées, il confond les csh interprète comme une vérification des fichiers.Le remplacer par cette ligne: