Trouver tous *.sh fichiers dans le répertoire
Je veux trouver tous les *.sh fichiers dans un répertoire, mais il y a certaines erreurs dans le script...
#!/bin/sh
for plik in /var/panel/starter/*
do
if [ $(basename "$plik") != "priority" ] && [ $(basename "$plik") != "PRIORITY" ]
then
for plik in $plik/*
do
filename=$(basename "$plik")
extension="${filename##*.}"
filename="${filename%.*}"
if [ "$extension" == "sh" ]
then
echo $plik
fi
done
fi
done
Il y a quelques dossiers dans /var/panneau/de démarreur, et dans ces dossiers, il y a des scripts shell, c'est pourquoi j'ai utilisé pour la boucle deux fois.
C'est l'erreur:
[: 19: *: unexpected operator
[: 19: sh: unexpected operator
[: 19: sh: unexpected operator
[: 19: sh: unexpected operator
[: 19: *: unexpected operator
Je crois que le problème est avec des dossiers vides comme:
/var/panel/starter/cs16/*
et je n'ai pas une idée de la façon de les gérer.
pouvez-vous juste
C'était seulement un exemple. Plus tard je veux exécuter des scripts. Au lieu de echo $scellé, il sera sh $scellé. Sans
find -name "*.sh"
? si vous voulez faire un peu de filtre que vous pourriez utiliser -regex
ou de rediriger la sortie vers grep
. ou j'ai mal compris votre exigence/var/panel/starter/*.sh
?C'était seulement un exemple. Plus tard je veux exécuter des scripts. Au lieu de echo $scellé, il sera sh $scellé. Sans
if [ "$extension" == "sh" ]
condition qu'il exécute également /var/panel/starter/cs16/*
et j'essaie de l'éviter. @devnull, il ne fonctionne pas.OriginalL'auteur Filip Frątczak | 2013-08-06
Vous devez vous connecter pour publier un commentaire.
sh: unexpected operator
devrait vous donner un indice.Vous êtes l'exécution de votre script à l'aide de
sh
qui ne prend pas en charge la==
de l'opérateur sur la ligne 19. L'exécution de votre script à l'aide debash
devrait fonctionner correctement, ou tout simplement utiliser=
.OriginalL'auteur devnull
Pourquoi utiliser un script, quand vous pouvez obtenir le même à l'aide de :
OriginalL'auteur blackSmith
Pourquoi ne pas utiliser find et grep?
OriginalL'auteur Varun