SSH 구성 파일의 원격 명령


12

입력 한 후 ssh my_hostname특정 폴더에 ssh_config를 설정하고 싶습니다 . 내가 입력하는 것처럼 cd /folder/another_one/much_much_deeper/.

어떻게하면 되나요?

편집하다. "dir to ssh into dir ..."의 복제본으로 표시되었지만 내 질문 은 아닙니다 .

나는 명령에 꼬리를 붙여서 모든 명령을 실행할 수 있다는 것을 알고 있습니다 ssh. 내 질문은 /ssh_config명령이 아닌 파일 에 관한 것 입니다.


내 질문을 명확하게했습니다.
Kazz

에 대해서는 아무것도 없습니다 man ssh_config. 가장 가까운 것은 LocalCommand이지만 대화식 명령에는 사용할 수 없습니다.
lgeorget

1
왜 변경이 필요하다고 느끼는지 (질문에) 설명해 주 ssh_config시겠습니까? 시작 디렉토리를 구성하기에 더 좋은 곳이있을 수 있으며 가능한 솔루션에이 특정 제한이있는 이유를 이해하면 도움이됩니다.
roaima

1
ssh_config"이 작업을 수행 할 수 없습니다 "는 "배시 작업"과 중복되지 않습니다. "당신은 할 수 없습니다"는 완벽하게 유효한 답변입니다.
Franklin Yu

1
@terdon 그러나 "불가능하다"는 사실은 시간이 지남에 따라 변할 수 있습니다. 예, 지금 가능합니다. 이제 나는 (나중에 이것을 보러 오는 누군가에게) 새로운 대답이 필요하며, 우리는 여기에 붙어 있습니다. 이것이 다시 열리지 않으면 원하는 길은 새로운 질문을 만들고 답하는 것입니다.
Franklin Yu

답변:


19

OpenSSH 7.6 까지는 그렇게 할 수 없었습니다 . 에서 수동 :

원격 명령

서버에 성공적으로 연결 한 후 원격 시스템에서 실행할 명령을 지정합니다. 명령 문자열은 줄의 끝까지 확장되며 사용자의 쉘로 실행됩니다. 인수하기 RemoteCommand에 설명 토큰 동의 토큰 섹션을 참조하십시오.

이제 당신은 할 수 있습니다

RemoteCommand cd /tmp && bash

이 커밋 에서 소개되었습니다 .


5
RequestTTY force원격 명령에 TTY가 필요한 경우 추가하십시오 . 예 :tmux new -As my-session
Aaron Blenkush

이것은 킬러 ssh옵션입니다 감사합니다!
nhed

이로 인해 다른 명령을 실행할 수 없습니다 (예 : ssh my_hostname ls로 실패) Cannot execute command-line and remote command.. git 및 rsync와 같은 ssh를 사용하는 다른 도구도 실패합니다.
remram

2

ssh my_hostname을 입력 한 후 ssh_config를 설정하고 싶습니다.

불가능합니다. 에서이를 달성 할 수있는 옵션이 없습니다 ssh_config. 가장 가까운 것은 bash 별칭 또는 bash 함수를 설정하는 것입니다.

myssh() {
    ssh -t $1 "cd /dir/; bash"
}

1

나는 somoene이 이것이 원래라고 지적하기 전에 다른 티켓으로 응답했습니다.

Mac을 사용하는 경우 iTerm2를 사용하고 프로파일을 작성하는 것이 좋습니다. 넣어 ssh my_hostname명령 행에서 다음 명령을 추가 cd /folder/another_one/much_much_deeper/시작 필드에서 송신 텍스트. 세션에 연결하면 호스트 이름으로 ssh하고 경우에 따라 디렉토리로 cd하거나 명령을 실행합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.