명령 시작 시 변수의 명령을 사용하여 리디렉션이 실패함

명령 시작 시 변수의 명령을 사용하여 리디렉션이 실패함

명령 문자열을 변수에 넣고 싶습니다. 이게 내가 하는 일이야

ssh=">/dev/null ssh -i key domain"

그런 다음 다음 명령을 호출하고 싶습니다.

$ssh ls >&2

그러나 이것은 실패합니다.

bash: 1>/dev/null: No such file or directory

이것이 예상되는 동작입니까?

답변1

예, 따옴표로 인해 존재하지 않는 명령 ">/dev/null..."을 실행하려고 하므로 이는 예상된 현상입니다.

확인 해봐:https://stackoverflow.com/questions/794728/variables-as-commands-in-bash-scripts

답변2

당신은 평가를 찾고 있습니다 ...

eval "$ssh ls >&2"

또는

eval "$ssh ls" >&2

관련 정보