Tester caracteres script
lulut
-
lulut -
lulut -
bonjour,
je cherche à tester une chaine de caracteres en premier argument d'un script , à savoir si cet argument est un fichier ou un dossier, si cet argument contient des chiffres ou des lettres ; comment chercher un caractere dans un argument (pas dans un fichier )
merci
je cherche à tester une chaine de caracteres en premier argument d'un script , à savoir si cet argument est un fichier ou un dossier, si cet argument contient des chiffres ou des lettres ; comment chercher un caractere dans un argument (pas dans un fichier )
merci
A voir également:
- Tester caracteres script
- Flash drive tester - Télécharger - Divers Utilitaires
- Tester son pc - Guide
- Script vidéo youtube - Guide
- Caractères spéciaux - Guide
- Caractères ascii - Guide
3 réponses
Salut lulut,
je cherche à tester une chaine de caracteres, à savoir si cet argument :
est un fichier :
ou un dossier :
si cet argument contient exclusivement des chiffres :
ou exclusivement des lettres :
je cherche à tester une chaine de caracteres, à savoir si cet argument :
est un fichier :
if [ -f "argument" ]; then...fi test -f "argument" ; echo "$?"
ou un dossier :
if [ -d "argument" ]; then...fi
si cet argument contient exclusivement des chiffres :
echo "argument" | egrep '^[0-9]+$'
ou exclusivement des lettres :
echo "argument" | egrep '^[a-zA-Z]+$'
Re-
Si la chaîne n'est pas entièrement alphabétique, rien n'est retournée et le code retour ($?) est égal à 1 (un).
C'est ce code retour qu'il faut testé...
[jp@MDK tmpfs]$ echo aBcDeF | egrep '^[a-zA-Z]+$' aBcDeF [jp@MDK tmpfs]$ echo $? 0 [jp@MDK tmpfs]$ echo aBc222DeF | egrep '^[a-zA-Z]+$' [jp@MDK tmpfs]$ echo $? 1 [jp@MDK tmpfs]$En fait si la chaîne est entièrement alphabétique, la chaîne est retournée et le code retour ($?) est égal à 0 (zéro).
Si la chaîne n'est pas entièrement alphabétique, rien n'est retournée et le code retour ($?) est égal à 1 (un).
C'est ce code retour qu'il faut testé...
echo "argument" | egrep '^[a-zA-Z] +$' ???
car en fait je veux tester cette valeur donc mettre un if devant
je veux dire par exemple si cette valeur = d alors telle instruction
mais ça plante