alias export 'eval setenv 'echo \!:1 | cut -d'=' -f1' 'echo \!:1 | cut -d'=' -f2''
Estou tentando encontrar uma maneira de traduzir funções para csh
/ tcsh
aliases, pois elas não têm funções, mas possuem aliases paramétricos. Como primeiro passo, estou tentando criar um comando export
.
Aqui está o que eu tenho até agora
alias export 'setenv 'echo \!:1 | cut -d'=' -f1' 'echo \!:1 | cut -d'=' -f2''
mas estou confuso sobre o porquê de não estar funcionando. Sou bem novo na sintaxe deles, por isso posso estar cometendo um erro que seria óbvio para um usuário experiente ( t
) csh
. Aqui está o resultado:
% export key=value
setenv: Syntax Error.
Se eu fizer quase a mesma coisa, mas usar echo
em vez de setenv
, funcionará:
alias export 'echo 'echo \!:1 | cut -d'=' -f1' 'echo \!:1 | cut -d'=' -f2''
% export key=value
key value
Isso parece confirmar que tudo deve funcionar e deve ser traduzido em setenv key value
.
O que estou fazendo de errado?
alias export 'eval setenv 'echo \!:1 | cut -d'=' -f1' 'echo \!:1 | cut -d'=' -f2''