Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 27/04/2011, à 22:14

Cectho

Rendre script turbo C-shell éxécutable

Alors je débute dans le monde UNIX! J'ai installé Ubuntu 10.10 via virtual box sous windows 7 et j'ai installé tcsh.
J'ai un minuscule script en tcsh dont les commandes fonctionnent si je les copie dans le terminal. Je souhaite le rendre éxécutable et pouvoir l'appeler via une commande (le nom du fichier contenant le script) comme les autres. J'ai mis mon fichier texte contenant le script (qui commence par #! /usr/bin/tcsh) dans /usr/bin. Je l'ai rendu exécutable pour tout le monde et j'ai fais un rehash. Mais quoi que je fasse si je lance le script depuis le terminal cela m'indique command not found. J'ai essayé de le mettre à plein d'endroit en changeant le PATH en fonction mais je ne suis jamais arrivé à le lancer!
Je dois passer à coté de quelque chose d'évident mais aidez moi SVP!!!!

Hors ligne

#2 Le 28/04/2011, à 09:59

J5012

Re : Rendre script turbo C-shell éxécutable

et en laissant le script dans le dossier perso ? et en l'appelant par ./script apres un cd dossier_perso ?

Hors ligne

#3 Le 28/04/2011, à 17:41

Cectho

Re : Rendre script turbo C-shell éxécutable

j'ai essayé ça aussi mais non ça ne change rien!!

Hors ligne

#4 Le 28/04/2011, à 17:53

serged

Re : Rendre script turbo C-shell éxécutable

C'est pas plutôt :

#!/bin/tcsh

(les shells sont dans /bin, pas /usr/bin)


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#5 Le 28/04/2011, à 19:35

aduxas

Re : Rendre script turbo C-shell éxécutable

Je pense que $PATH contient par défaut /home/ton_home/bin.  C'est là qu'on est supposé installer ses script personnels.  Les autres utilisateurs peuvent faire reference à ton script avec un alias ou inclure ton bin dans leur PATH.  Aussi, la déclaration de la shell n'y a rien à voir, car il faut d'abord trouver la commande avant de tomber là-dessus.  Que donne

echo $PATH
which mon_petit_script

Hors ligne

#6 Le 28/04/2011, à 19:58

Cectho

Re : Rendre script turbo C-shell éxécutable

Merci pour vos suggestions!
En fait j'ai trouvé!
En ouvrant mes scripts avec gedit j'ai vu qu'ils étaient enregistrés avec l'option "fin de ligne windows". Je ne sais pas d'où cela vient car j'ai tout fait sous linux. Quoi qu'il en soit en les enregistrant avec l'option fin de ligne unix/linux tout est rentré dans l'ordre!! Est- ce que quelqu'un pourrait m'expliquer à quoi correspond cette option?
Sinon je souhaiterais modifier le PATH et le shell utilisés sans avoir besoin de le faire à chaque démarrage. Je voudrais inclure le dossier /home/moi/mes_scripts dans le path et que l'ouverture d'un terminal soit par défaut en tcsh. Je sais le faire une fois le terminal ouvert mais ces choix sont pour l'instant perdu à chaque lancement de terminal.
D'avance merci

Hors ligne

#7 Le 28/04/2011, à 20:28

FRUiT

Re : Rendre script turbo C-shell éxécutable

Dans ~/.bashrc ou équivalent :

[ "${PATH%_scripts*}" = "${PATH}" ] && PATH="${PATH%:}:/home/moi/mes_scripts"

Sinon tu peux rajouter le dossier dans /etc/environment.

Dernière modification par FRUiT (Le 28/04/2011, à 21:00)


Neon Suite by FRUiT (kde4.6) [url]http://[Merci de relire les règles]/yzm7cee[/url]
"Pour la carotte, le lapin est la plus parfaite incarnation du mal" (R. Sheckley)
clean

Hors ligne

#8 Le 01/05/2011, à 08:30

J5012

Re : Rendre script turbo C-shell éxécutable

fin de ligne windows == nouvelle ligne
fin de ligne unix/linux == nouvelle ligne + retour charriot

dans le sens windows, nouvelle ligne == retour charriot == saut de ligne
dans le sens unix, retour charriot == validation → enregistrement / prise en compte ; nouvelle ligne == nouvelle ligne apres saut de ligne

Dernière modification par J5012 (Le 01/05/2011, à 08:33)

Hors ligne

#9 Le 02/05/2011, à 16:17

serged

Re : Rendre script turbo C-shell éxécutable

En passant tcsh, ce n'est pas l'abréviation de "turbo-C-shell" wink
cf : http://fr.wikipedia.org/wiki/Tcsh


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne