J'ai script shell alternatif qui filtre pour un fichier avec l'état comme ci-dessous:-C shell: foreach ls ne peut pas détecter le nom du fichier avec tableau de bord/trait d'union (-)
*_[+-]*[A-D]*.txt
Exemple de fichier:
Reflow_-12_A124er.txt
Mon script comme ci-dessous:
#!/bin/csh -f
cd /data
foreach file (`ls *_[+-]*[A-D]*.txt`)
echo "file: " $file
gzip $file
end
Si je tente commande ls *_[+-]*[A-D]*.txt
en d ata dossier, il y a sortie pour le fichier txt. Mais si j'essaie d'exécuter le script, le script ne détecte pas le fichier avec (-) même s'il rencontre le filtre. Pourquoi?
cela fonctionne bien .. – larrey