J'essaie d'écrire un script utilitaire qui définit certains alias.
Ma coquille est tcsh
(ne peut pas changer cela).
J'ai essayé ce qui suit
#!/bin/tcsh
alias log 'less ~/logs/log.`date '+%Y%m%d'`''
Ensuite, je le lance comme ceci:
./myscript
log
La sortie que j'obtiens est: log: Command not found.
Naturellement, si je le lance comme ceci:
source myscript
log
Tout va bien.
Une façon de le faire sans préciser source ...
?
shell-script
alias
tcsh
RonK
la source
la source
alias
dans votre~/.cshrc
dossier?Réponses:
Tu ne peux pas. En exécutant votre script, vous exécutez un nouveau shell. Les alias ne seront pas vus par le processus parent.
La seule façon, comme indiqué, est d'utiliser
source
pour que le shell actuel traite votre fichier de script (sans démarrer un nouveau processus).la source
source myscript
- je voulais quelque chose de facile qui puisse être partagé par tous les membres de l'équipe - un alias le fera.