Adapter son script pour les pipelines
Bonjour tous et toutes !
Je suis en Licence 1 Informatique et dans le cours d'Environnement Informatique, on apprend à faire des script et utiliser les systèmes GNU/Linux. Sinon, ça fait 2 ans que je bidouille un peu sous Debian et Ubuntu.
Voici les explications de mes soucis :
Considérons un script bidon qui prend un nom de fichier en paramètre :
Code:
1 2 3 4 5 6 7
| #! /bin/csh
#monscript
if ( -e $1 ) then
cat $1 | tr "/" ":"
endif |
Résultat :
Code:
1 2 3 4 5
| nom@machine:~$ cat test.txt
/je/suis/sur/linux
nom@machine:~$ ./monscript.sh test.txt
:je:suis:sur:linux
nom@machine:~$ |
Comment dois-je l'adapter pour qu'il fonctionne de cette manière (et qu'il fonctionne également comme au départ) :
Code:
1 2 3
| nom@machine:~$ pwd | ./monscript.sh
:home:nom
nom@machine:~$ |
Sinon, une dernière petite question : (vous aurez remarqué que c'est du CSH et pas du SH) comment fait-on pour accéder à la case n° i-1 d'un tableau ?
J'ai essayé plusieurs syntaxes sans succès, j'ai dû passer par une variable tmp = $i -1 et c'est moche.
Vous conviendrez que l'utilité de ce script est critiquable, mais mon but c'est de savoir comment faire, puis de l'appliquer sur mes scripts.
Sinon, j'ai remarqué que le csh est assez chiant au niveau débogage, j'ai pas mal galéré sur des détails. Du coup, j'aimerais aussi savoir comment on fait en sh/bash.
Merci d'avance !