lancer un fichier qui execute une commande shell - Linux et OS Alternatifs
Marsh Posté le 19-05-2002 à 21:17:02
un petite chose : echo "ls" -> va uniquement t'afficher ls à l'écran
Alors deux maniere pour lancer ton script shell
1- En lancant via le chemin complet ou relatif
a) complet : /home/moi/liste
b) relatif ( par exemple ) ./liste ( si tu te trouves dans le repetoire /home/moi comme dans l'exemple précedent )
2- en le faisant exécuter comme un paramettre d'un shell
sh /home/moi/liste
sh liste ( si tu est dans le répertoire /home/moi )
Marsh Posté le 19-05-2002 à 21:24:36
Citation : |
le * a la fin ça veut juste dire que ton fichier est executable
le nom de ton fichier n'a pas changé !
Marsh Posté le 19-05-2002 à 21:24:50
becket a écrit a écrit : un petite chose : echo "ls" -> va uniquement t'afficher ls à l'écran Alors deux maniere pour lancer ton script shell 1- En lancant via le chemin complet ou relatif a) complet : /home/moi/liste b) relatif ( par exemple ) ./liste ( si tu te trouves dans le repetoire /home/moi comme dans l'exemple précedent ) 2- en le faisant exécuter comme un paramettre d'un shell sh /home/moi/liste sh liste ( si tu est dans le répertoire /home/moi ) |
Merci, maintenant ca marche !
Je vais maintenant pouvoir essayer de faire des trucs un peu plus utile plutot que de lister un repertoire....
Je vais essayer de faire compter les lignes de tous les fichiers du repertoire...
Marsh Posté le 19-05-2002 à 21:30:01
jultey a écrit a écrit : Merci, maintenant ca marche ! Je vais maintenant pouvoir essayer de faire des trucs un peu plus utile plutot que de lister un repertoire.... Je vais essayer de faire compter les lignes de tous les fichiers du repertoire... |
find /monrepertoire -type f -exec wc -l '{}' ';'
Marsh Posté le 19-05-2002 à 21:36:26
kasi a écrit a écrit : find /monrepertoire -type f -exec wc -l '{}' ';' |
Oua !
Mais pourrais tu expliquer brievement la logique du truc ?
Moi, j'etais parti sur un truc du style
#!/bin/bash
ls > total
more total | wc -l
Marsh Posté le 19-05-2002 à 21:38:58
jultey a écrit a écrit : Oua ! Mais pourrais tu expliquer brievement la logique du truc ? Moi, j'etais parti sur un truc du style #!/bin/bash ls > total more total | wc -l |
Oua !
j'avais pas compris ce que tu voulais faire
le script que je t'ais donner donner le nombre de ligne dans chanque fichier du repertoire /monrepertoire.
pour ton truc, tu peux le faire en un coup :
ls | wc -l
Marsh Posté le 19-05-2002 à 21:45:38
kasi a écrit a écrit : Oua ! j'avais pas compris ce que tu voulais faire le script que je t'ais donner donner le nombre de ligne dans chanque fichier du repertoire /monrepertoire. pour ton truc, tu peux le faire en un coup : ls | wc -l |
Ok, mais comment marche ta ligned de commande ? Je croyais que find c'etait pour chercher des fichiers...
Marsh Posté le 19-05-2002 à 21:50:30
jultey a écrit a écrit : Ok, mais comment marche ta ligned de commande ? Je croyais que find c'etait pour chercher des fichiers... |
avec l'option -exec tu peux passer des commandes
RTMF
man find est ton ami
Marsh Posté le 19-05-2002 à 21:54:10
kasi a écrit a écrit : avec l'option -exec tu peux passer des commandes RTMF man find est ton ami |
Sacré man va !! Toujours la quand on ne l'attend pas !
Marsh Posté le 19-05-2002 à 22:15:29
Avec find on peut faire a peut pres tout et n'importe quoi ... sauf le café
man find est effectivement ton ami
et puis c'est pas RTMF c'est
Marsh Posté le 19-05-2002 à 22:20:54
becket a écrit a écrit : Avec find on peut faire a peut pres tout et n'importe quoi ... sauf le café man find est effectivement ton ami et puis c'est pas RTMF c'est |
arf ouaip
Read The Fucking Manual et non pas Read The Manual Fissafissa !
Marsh Posté le 19-05-2002 à 21:10:19
Salut, j'ai fait un fichier qui contient une commande et j'aimerai qu'en lançant ce fichier, ca execute ce qu'il y a l'interieur.
Mon fichier s'appelle "liste" est contient :
#!/bin/bash
echo "ls"
Je l'ai rendu executable, mais deja, la, ca m'a rajouté une etoile a la fin de mon fichier, ca veut dire quoi ?
-rwxr--r-- 1 jultey jultey 23 mai 19 20:59 liste*
Lorsque que je tape liste >
[jultey@localhost tmp]$ liste
ca me repond >
bash: liste: command not found
Comment dois je lancer mon fichier ?
Merci pour vos reponses