Я хочу написать один скрипт со своим псевдонимом, но не могу добавить строку взрыва в свой скрипт с помощью команды echo. Я пробовал эти способы:
alias wnc 'echo "#\!/bin/csh " > cshCMD.csh; echo "ncl" >> cshCMD.csh; chmod +x cshCMD.csh; '
alias wnc "echo '#\!/bin/csh ' > cshCMD.csh; echo 'ncl' >> cshCMD.csh; chmod +x cshCMD.csh;"
Если я запускаю эти строки без псевдонима, то они у меня работают.
echo "#\!/bin/csh " > cshCMD.csh; echo "ncl" >> cshCMD.csh; chmod +x cshCMD.csh;
С прямым вводом и использованием команды я получу данные в файл cshCMD.csh как:
#!/bin/csh
ncl
в то время как когда я использую псевдоним в командной строке как
wnc
Я получил это сообщение:
/bin/csh: Event not found
Вам нужен \!
в расширении вашего псевдонима, поэтому вы должны использовать \\!
при его определении. Первая обратная косая черта исчезает во время обработки команды определения псевдонима, а вторая защищает !
при запуске псевдонима.