csh의 매개변수 별칭은 내보내기 명령을 추가합니다.

csh의 매개변수 별칭은 내보내기 명령을 추가합니다.

함수가 부족하지만 매개변수 별칭이 있기 때문에 함수를 csh/ 별칭 으로 변환하는 방법을 찾으려고 합니다 . tcsh첫 번째 단계로 명령을 만들어 보았습니다 export.

이것이 내가 지금까지 얻은 것입니다.

alias export 'setenv `echo \!:1 | cut -d'=' -f1` `echo \!:1 | cut -d'=' -f2`'

그런데 왜 작동하지 않는지 혼란스러워요. 나는 그들의 구문을 처음 접했기 때문에 숙련된 ( ) 사용자에게는 t명백한 실수를 저지르고 있을 수도 있습니다 csh. 결과는 다음과 같습니다.

% export key=value
setenv: Syntax Error.

거의 동일한 작업을 수행하지만 echo대신 사용하는 경우 setenv:

alias export 'echo `echo \!:1 | cut -d'=' -f1` `echo \!:1 | cut -d'=' -f2`'
% export key=value
key value

이는 모든 것이 작동하고 setenv key value.

내가 뭘 잘못했나요?

답변1

alias export 'eval setenv `echo \!:1 | cut -d'=' -f1` `echo \!:1 | cut -d'=' -f2`'

관련 정보