запускать csh-скрипты из bash, временно менять оболочку с помощью команды - PullRequest
6 голосов
/ 09 ноября 2010

Мне нужно запустить сценарии csh из оболочки bash и, следовательно, временно изменить команду на tcsh через команду. Он отлично работает в интерактивном режиме, но я не могу понять, в одной строке команды. Так что в интерактивном режиме я делаю в оболочке Bash:

tcsh

источник my.tcshr

useMyTcshCmd

и т.д.

Как я могу сделать все это в 1 команде? Извините за вопрос новичка ...

Ответы [ 3 ]

14 голосов
/ 09 ноября 2010
tcsh -c "echo foo; echo bar"

Результат:

<i>foo
bar
</i>

Так что это должно работать:

tcsh -c "source my.tcshr; useMyTcshCmd"
3 голосов
/ 09 ноября 2010

Вы должны указать переводчика непосредственно в скрипте:

#!/usr/bin/tcsh
echo "doing stuff"

А затем просто запустите скрипт:

./script
0 голосов
/ 09 ноября 2010
tcsh -c useMyTcshCmd
...