目录
低效操作方式" >低效操作方式
一条命令快速进入到服务器指定目录" >一条命令快速进入到服务器指定目录
一条命令远程执行服务器命令" >一条命令远程执行服务器命令
一个折中的方案" >一个折中的方案
首页 系统教程 操作系统 如何 SSH 到 Linux 服务器里的特定目录及执行命令?

如何 SSH 到 Linux 服务器里的特定目录及执行命令?

Feb 12, 2024 am 10:39 AM
linux linux教程 linux系统 linux命令 外壳脚本 嵌入式linux linux入门 linux学习

你是不是有遇到过这样的场景?使用 SSH 命令进入到服务器,然后再用 cd 命令进入到对应目录,再继续进行你的工作。

这种操作对于新手来讲特别常见,之前也是这样。在本文,老司机将带你来进行更高效的操作,只需一步即可达到你想要的效果。

而且,不仅仅是实现快速进入到 Linux 服务器特定的目录,还可以实现在连接上服务器的时候即执行一个对应的命令。

低效操作方式

如果你不知道本文介绍的方法,你很可能是分成两步来操作的:

第一步:使用 SSH 命令进入到远程服务器

ssh user@remote-system
登录后复制

第二步:使用 cd 命令进入到你想要的目录

cd 
登录后复制

一条命令快速进入到服务器指定目录

上面提到的这种方式当然是可以的,但过于低效。这样操作你需要使用两条命令,但实际上,你完全可以使用一条命令即可实现你想要的效果,比如:

ssh -t pi@192.168.0.116 'cd /home/pi/tests ; bash'
登录后复制

通过这条命令,我们可以直接就进入到树莓派(远程服务器)中对应的目录里(即 /home/pi/tests)。后续你就可以再继续你的工作了。

在这里, -t 选项是表示强制伪终端分配,即使标准输入不是终端。如果不加的话,可能会有如下提示:

Pseudo-terminal will not be allocated because stdin
登录后复制

这里我们再用一个动画来直观地演示这个过程:

除此之外,你还可以使用下面这个命令:

ssh -t pi@192.168.0.116 'cd /home/pi/tests ; exec bash'
登录后复制

或者:

ssh -t pi@192.168.0.116 'cd /home/pi/tests && exec bash -l'
登录后复制

在这里,-l 选项将这个 bash 设置为登录 shell。

在上面的三条命令里,最后的参数都是 bash,是因为我的远程服务器默认的 shell 解释器是 bash 。如果你不知道你远程服务器所使用的 shell 解释器,可以使用以下命令:

ssh -t pi@192.168.0.116 'cd /home/pi/tests && exec $SHELL'
登录后复制

一条命令远程执行服务器命令

正如本文开头所讲的,我们不仅可以使用一条命令进入到远程服务器指定目录,还可以使用一条命令远程执行服务器命令。甚至,我们还可以使用一条命令进入到远程服务器的指定目录,再执行一条命令。

其实所使用的方法都是一样的,比如我们想进入到树莓派的 /home/pi/tests 目录,再执行 ls -al 命令,我们可以这样输入命令:

ssh -t pi@192.168.0.116 'cd /home/pi/tests && ls -al && exec $SHELL'
登录后复制

执行的结果如下:

[Alvin.Alvin-computer] ➤ ssh -t pi@192.168.0.116 'cd /home/pi/tests && ls -al && exec $SHELL'
total 48
drwxr-xr-x  4 pi pi 4096 Apr  5 14:36 .
drwxr-xr-x 21 pi pi 4096 Apr 21 19:26 ..
drwxrwxrwx  7 pi pi 4096 Apr  5 17:28 GIC
drwxrwxrwx  3 pi pi 4096 Apr  5 17:37 gitchat
-rw-r--r--  1 pi pi  474 Apr  5 11:21 liangxu.json
-rwxr-xr-x  1 pi pi 8184 Mar 17 15:34 test
-rwxr-xr-x  1 pi pi 8184 Mar 17 15:34 test2
-rwxr-xr-x  1 pi pi 8184 Mar 17 15:34 test3
-rw-r--r--  1 pi pi  131 Mar 17 15:34 test.c
登录后复制

一个折中的方案

如果你觉得这条命令太长了不好敲,非要先进入到服务器,再 cd 到对应的目录。那么,我们可以修改远程服务器的 .bashrc 文件。

vim ~/.bashrc
登录后复制

将你要执行的命令写在里面。比如在这个场景下,我们可以这样加:

cd /home/pi/tests >& /dev/null
登录后复制

然后我们再执行 :wq 保存文件,再执行以下命令使更改生效:

source ~/.bashrc
或者
. ~/.bashrc
登录后复制

这样,我们一进入到服务器后,就会自动进入到 /home/pi/tests 目录里。如下动图所示:

如何 SSH 到 Linux 服务器里的特定目录及执行命令?

但是,这个有个明显的弊端,就是我们只能进入到我们指定的目录,如果要换成其它目录,那只能再改 .bashrc 文件了。1

以上是如何 SSH 到 Linux 服务器里的特定目录及执行命令?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

centos和ubuntu的区别 centos和ubuntu的区别 Apr 14, 2025 pm 09:09 PM

CentOS 和 Ubuntu 的关键差异在于:起源(CentOS 源自 Red Hat,面向企业;Ubuntu 源自 Debian,面向个人)、包管理(CentOS 使用 yum,注重稳定;Ubuntu 使用 apt,更新频率高)、支持周期(CentOS 提供 10 年支持,Ubuntu 提供 5 年 LTS 支持)、社区支持(CentOS 侧重稳定,Ubuntu 提供广泛教程和文档)、用途(CentOS 偏向服务器,Ubuntu 适用于服务器和桌面),其他差异包括安装精简度(CentOS 精

centos如何安装 centos如何安装 Apr 14, 2025 pm 09:03 PM

CentOS 安装步骤:下载 ISO 映像并刻录可引导媒体;启动并选择安装源;选择语言和键盘布局;配置网络;分区硬盘;设置系统时钟;创建 root 用户;选择软件包;开始安装;安装完成后重启并从硬盘启动。

Centos停止维护2024 Centos停止维护2024 Apr 14, 2025 pm 08:39 PM

CentOS将于2024年停止维护,原因是其上游发行版RHEL 8已停止维护。该停更将影响CentOS 8系统,使其无法继续接收更新。用户应规划迁移,建议选项包括CentOS Stream、AlmaLinux和Rocky Linux,以保持系统安全和稳定。

CentOS上GitLab的备份方法有哪些 CentOS上GitLab的备份方法有哪些 Apr 14, 2025 pm 05:33 PM

CentOS系统下GitLab的备份与恢复策略为了保障数据安全和可恢复性,CentOS上的GitLab提供了多种备份方法。本文将详细介绍几种常见的备份方法、配置参数以及恢复流程,帮助您建立完善的GitLab备份与恢复策略。一、手动备份利用gitlab-rakegitlab:backup:create命令即可执行手动备份。此命令会备份GitLab仓库、数据库、用户、用户组、密钥和权限等关键信息。默认备份文件存储于/var/opt/gitlab/backups目录,您可通过修改/etc/gitlab

docker原理详解 docker原理详解 Apr 14, 2025 pm 11:57 PM

Docker利用Linux内核特性,提供高效、隔离的应用运行环境。其工作原理如下:1. 镜像作为只读模板,包含运行应用所需的一切;2. 联合文件系统(UnionFS)层叠多个文件系统,只存储差异部分,节省空间并加快速度;3. 守护进程管理镜像和容器,客户端用于交互;4. Namespaces和cgroups实现容器隔离和资源限制;5. 多种网络模式支持容器互联。理解这些核心概念,才能更好地利用Docker。

centos怎么挂载硬盘 centos怎么挂载硬盘 Apr 14, 2025 pm 08:15 PM

CentOS硬盘挂载分为以下步骤:确定硬盘设备名(/dev/sdX);创建挂载点(建议使用/mnt/newdisk);执行mount命令(mount /dev/sdX1 /mnt/newdisk);编辑/etc/fstab文件添加永久挂载配置;卸载设备使用umount命令,确保没有进程使用设备。

docker desktop怎么用 docker desktop怎么用 Apr 15, 2025 am 11:45 AM

如何使用 Docker Desktop?Docker Desktop 是一款工具,用于在本地机器上运行 Docker 容器。其使用步骤包括:1. 安装 Docker Desktop;2. 启动 Docker Desktop;3. 创建 Docker 镜像(使用 Dockerfile);4. 构建 Docker 镜像(使用 docker build);5. 运行 Docker 容器(使用 docker run)。

Centos停止维护后的选择 Centos停止维护后的选择 Apr 14, 2025 pm 08:51 PM

CentOS 已停止维护,替代选择包括:1. Rocky Linux(兼容性最佳);2. AlmaLinux(与 CentOS 兼容);3. Ubuntu Server(需要配置);4. Red Hat Enterprise Linux(商业版,付费许可);5. Oracle Linux(与 CentOS 和 RHEL 兼容)。在迁移时,考虑因素有:兼容性、可用性、支持、成本和社区支持。

See all articles