曾經想通過 SSH 連接到遠程服務器並立即將 CD 插入到您的目錄中嗎?是的?好吧,你在正確的軌道上!這個簡短的教程將向您展示如何通過 SSH 直接進入 Linux 上的特定目錄。含義——當你通過 SSH 登錄到遠程系統時,可以自動切換到特定目錄。您不僅可以通過 SSH 進入特定目錄,還可以在通過 SSH 連接到遠程服務器後立即運行任意命令。

內容

  1. SSH 到遠程 Linux 系統上的特定目錄
    1. 在遠程系統上創建一個目錄並自動 SSH 進入它
    2. 使更改永久化
    3. 在遠程 Linux 系統上通過 SSH 運行命令
      1. 幫助我們幫助您:

SSH 到遠程 Linux 系統上的特定目錄

在我知道如何執行此操作之前,我通常首先使用以下命令通過 SSH 連接到遠程遠程系統:

$ ssh [email protected]

然後將 CD 插入以下目錄:

$ cd <some-directory>

以下是如何切換到遠程系統上的目錄。更有什者! 您不必使用兩個單獨的命令! !!

例如,您可以通過 SSH 連接到遠程系統 (192.168.225.52) 並使用以下命令自動 cd 到名為“dir1”的目錄:

$ ssh -t [email protected] 'cd /home/ostechnix/dir1 ; bash'

上述命令將通過 SSH 連接到遠程系統(192.168.225.52)並立即 cd 到指定的目錄。 ‘/home/ostechnix/dir1’ 將您留在目錄中,最後留在遠程系統的外殼中。

是這裡, -t 此標誌用於強制交互式 shell 分配所需的偽終端。如果未指定此標誌,則不會顯示任何提示。如果不添加 “重擊” 上述命令完成後,連接關閉,控制權返回到本地系統。

以下是上述命令的輸出示例。

以下是通過 SSH 連接到特定目錄的示例命令。

$ ssh -t [email protected] 'cd /home/ostechnix/dir1 ; bash --login'

是這裡, – 登錄 該標誌將“bash”設置為登錄 shell。

再次,

$ ssh -t [email protected] 'cd /home/ostechnix/dir1 ; exec bash'

再次,

$ ssh -t [email protected] 'cd /home/ostechnix/dir1 && exec bash -l'

是這裡, -l 該標誌將“bash”設置為登錄 shell。

在上面的例子中,它被明確提到 重擊 作為登錄外殼。因為我知道 Bash 是我的遠程系統的默認 shell。如果您不知道遠程系統的 shell 類型,請使用以下命令:

$ ssh -t [email protected] 'cd /home/ostechnix/dir1 && exec $SHELL'

在遠程系統上創建一個目錄並自動 SSH 進入它

如果您嘗試 SSH 到遠程系統上不存在的目錄,您將在成功驗證後看到以下消息:

bash: line 0: cd: /home/ostechnix/dir2: No such file or directory

如您所見,名為“dir2”的目錄在遠程系統上不可用。如果要在遠程系統上創建目錄並通過 SSH 自動插入,只需從本地系統運行以下命令:

$ ssh -t [email protected] 'mkdir -p dir2 ; cd /home/ostechnix/dir2 ; bash --login'

使更改永久化

如果不想每次都手動輸入上面的命令,只需要在遠程系統上連接SSH服務器後添加一個命令運行即可。 ~/.bashrc~/.bash_profile〜/ .個人資料 文檔。

編輯 .bashrc 文檔:

 $ nano ~/.bashrc

一一添加命令。就我而言,我將添加以下行:

cd /home/ostechnix/dir1 >& /dev/null

編輯 .bashrc 文件

請注意,您需要在遠程系統上 .bash_profile.bashrc..輪廓 一個文件,而不是本地系統。根據 Ctrl + O 然後按 Enter 保存並按 Ctrl + X 關閉文件。

最後,運行以下命令來更新您的更改。

 $ source ~/.bashrc

從現在開始,每次登錄(通過 SSH 或直接登錄)時,都會執行 cd 命令,並自動將您重定向到“/home/ostechnix/dir1”目錄。

SSH 進入特定的 Linux 目錄

在遠程 Linux 系統上通過 SSH 運行命令

正如已經提到的,這個技巧不僅僅是在連接到遠程系統後移動到一個目錄。您也可以使用此方法執行其他命令。

例如,以下命令將您帶到“/home/ostechnix/dir1”目錄並運行“uname -a”命令。

$ ssh -t [email protected] 'cd /home/ostechnix/dir1 && uname -a && exec $SHELL'

在遠程 Linux 系統上通過 SSH 運行命令

在以下指南中可以找到通過 SSH 在遠程系統上執行命令的其他示例。

  • 通過 SSH 在遠程 Linux 系統上運行命令

希望能幫助到你。

相關文件:

  • 如何使用一個命令 cd 和 ls
  • 如何使用一個命令運行 cp 或 mv 和 cd
  • 允許或拒絕對特定 Linux 用戶或組的 SSH 訪問

謝謝你的到來!

幫助我們幫助您:

  • 訂閱電子郵件通訊: 立即註冊
  • OSTechNix 支持: 通過貝寶捐款
  • 下載免費電子書和視頻: 貿易酒吧上的操作系統 TechNix
  • 詢問: 紅迪網 | Facebook | 推特 | 領英 | RSS訂閱

祝你今天過得愉快! !!

BASHLinuxLinux 命令 ShellSSHSSH 被直接保護在一個目錄中