[Shell] : string contenue dans une autre
Résolu
Thorfin
-
Thorfin -
Thorfin -
A voir également:
- [Shell] : string contenue dans une autre
- Classic shell - Télécharger - Personnalisation
- Ssh secure shell download - Télécharger - Divers Web & Internet
- Shell startup windows 10 - Guide
- Shell infrastructure host c'est quoi - Guide
- Shell do while ✓ - Forum Shell
2 réponses
$ ls file1 file2 foo.sh* $ cat file1 Mystring $ cat file2 My $ cat foo.sh #!/bin/bash grep -q -f $2 $1 if [[ $? = 0 ]] then echo "It's there!" > $3 fi $ ./foo.sh file1 file2 file3 $ ls file1 file2 file3 foo.sh* $ cat file3 It's there! $
;-))
Bonjour,
Connaissez-vous la commande diff ?
--
Connaissez-vous la commande diff ?
--
En fait je travaille en radiothérapie et on utilise un logiciel de planification de traitement (Pinnacle) permettant d'automatiser pas mal d'étape à l'aide de script (le code est propre au logiciel et basé sur du c++). Je voudrais détruire un objet si son nom contient les caractères "eq" mais c'est impossible à faire avec le code du logiciel. Il faut donc que j'envoie les actions à effectuer dans un terminal, que j'effectue les opérations en shell et que je récupère le résultat dans le script Pinnacle. Je sais envoyer les deux chaînes de caractères d'intérêt dans deux fichiers distincts (ou dans un mais ça à l'air plus compliqué à exploiter ?!) et je sais lire le fichier dans lequel sera stocké le résultat. Mais entre ces deux opération, tout ce qui est du shell, je ne vois pas comment m'en sortir ...
(je ne sais pas si je suis très clair, je peux détailler certains points si ça peut aider)
(je ne sais pas si je suis très clair, je peux détailler certains points si ça peut aider)
File1 contient : Mystring
File2 contient : My
File3 contient : 0 !!!!
Par contre j'ai modifié légèrement le script foo.sh pour rajouter un else :
#!bin/bash
grep -q -f $2 $1
if [[ $? = 0 ]]
then
echo "1" > $3
else
echo "0" > $3
fi
:-))
il me retourne :
grep: illegal option -- q
grep: illegal option -- f
Usage: grep -hblcnsviw pattern file . . .
Alors qu'initialement on a les mêmes fichiers ! le nom diffère, en fait, j'envoie très exactement la commande :
./contains.sh Temporary_string_83724.Script Temporary_stringSearch_83724.Script Temporary_stringSearchResult_83724.Script
Il ne s'agit pas d'un problème de version bash, bourne, c ? (je m'y connais pas du tout)