mac配置path的几种方式

本文详细介绍了Mac系统中环境变量的加载顺序及不同配置文件的作用。包括全局设置与单个用户的设置方法,以及如何立即使更改生效。

mac 一般使用bash作为默认shell

Mac系统的环境变量,加载顺序为:
/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc
当然/etc/profile和/etc/paths是系统级别的,系统启动就会加载,后面几个是当前用户级的环境变量。后面3个按照从前往后的顺序读取,如果~/.bash_profile文件存在,则后面的几个文件就会被忽略不读了,如果~/.bash_profile文件不存在,才会以此类推读取后面的文件。~/.bashrc没有上述规则,它是bash shell打开的时候载入的。

如果没特殊说明,设置PATH的语法都为:
——————————————————-

#中间用冒号隔开
     export PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>

(一)全局设置
下面的几个文件设置是全局的,修改时需要root权限

1)/etc/paths (全局建议修改这个文件 )
编辑 paths,将环境变量添加到 paths文件中 ,一行一个路径
Hint:输入环境变量时,不用一个一个地输入,只要拖动文件夹到 Terminal 里就可以了。

2)/etc/profile (建议不修改这个文件 )
全局(公有)配置,不管是哪个用户,登录时都会读取该文件。

3)/etc/bashrc (一般在这个文件中添加系统级环境变量)
全局(公有)配置,bash shell执行时,不管是何种方式,都会读取此文件。

4)
1.创建一个文件:
sudo touch /etc/paths.d/mysql
2.用 vim 打开这个文件(如果是以 open -t 的方式打开,则不允许编辑):
sudo vim /etc/paths.d/mysql
3.编辑该文件,键入路径并保存(关闭该 Terminal 窗口并重新打开一个,就能使用 mysql 命令了)
/usr/local/mysql/bin
据说,这样可以自己生成新的文件,不用把变量全都放到 paths 一个文件里,方便管理。

(二)单个用户设置

1)~/.bash_profile (任意一个文件中添加用户级环境变量)
(注:Linux 里面是 .bashrc 而 Mac 是 .bash_profile)
若bash shell是以login方式执行时,才会读取此文件。该文件仅仅执行一次!默认情况下,他设置一些环境变量
设置命令别名alias ll=’ls -la’
设置环境变量:

export PATH=/opt/local/bin:/opt/local/sbin:$PATH

2)~/.bashrc 同上

如果想立刻生效,则可执行下面的语句:
$ source 相应的文件
一般环境变量更改后,重启后生效。

### 登录 Linux ECS 服务器的具体方式 登录 Linux 弹性云服务器(ECS)的方式主要包括以下几种:SSH 密钥对认证、SSH 密码认证以及其他工具辅助的登录方式。以下是详细说明: #### SSH 密钥对认证 SSH 密钥对是一种基于加密算法的身份验证方法,由公钥和私钥组成。将公钥配置到 Linux 实例中后,用户可以通过本地保存的私钥直接登录实例,而无需输入密码[^1]。 - **前置条件**: - ECS 实例为 I/O 优化实例。 - ECS 实例的操作系统类型为 Linux。 - ECS 实例有公网 IP。 - 本地环境为 Mac/Linux 环境。 - **配置步骤**: - 在本地生成密钥对,例如使用 `ssh-keygen` 命令生成 RSA 密钥对。 ```bash ssh-keygen -t rsa -b 2048 -C "your_email@example.com" ``` - 将生成的公钥内容添加到目标 ECS 实例的 `~/.ssh/authorized_keys` 文件中。 - 使用以下命令通过私钥登录 ECS 实例: ```bash ssh -i /path/to/private_key.pem root@ecs_public_ip ``` #### SSH 密码认证 SSH 密码认证是通过输入用户名和密码完成身份验证的登录方式。这种方式简单易用,但安全性较低,建议仅在测试环境中使用[^2]。 - **前置条件**: - ECS 实例状态为“运行中”。 - ECS 实例已经绑定弹性公网 IP。 - 所在安全组入方向已开放 22 端口。 - **登录命令**: ```bash ssh root@ecs_public_ip ``` 输入密码后即可完成登录。 #### 使用 PuTTY 登录 PuTTY 是一款支持 SSH 协议的远程登录工具,适用于 Windows 系统用户连接 Linux ECS 实例[^3]。 - **步骤**: - 下载并安装 PuTTY 和 PuTTYgen 工具。 - 使用 PuTTYgen 转换私钥文件格式为 `.ppk` 格式。 - 打开 PuTTY,在 Host Name (or IP address) 中输入 ECS 的公网 IP 地址,端口号设置为 22,协议选择为 SSH。 - 在 Connection > SSH > Auth 中指定转换后的 `.ppk` 私钥文件。 - 点击 Open 并输入用户名完成登录。 #### 使用 Xshell 登录 Xshell 是另一款常用的远程登录工具,支持 SSH 协议连接到 Linux 或 Windows 服务器[^4]。 - **步骤**: - 下载并安装 Xshell 软件。 - 创建新会话,在 Host 字段中输入 ECS 的公网 IP 地址,端口号设置为 22,协议选择为 SSH。 - 连接成功后,输入用户名和密码或使用私钥完成登录。 ```python # 示例代码:检查远程连接是否可用 import socket def check_remote_connection(ip, port): try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.settimeout(5) result = sock.connect_ex((ip, port)) if result == 0: print(f"Connection to {ip} on port {port} is successful.") else: print(f"Failed to connect to {ip} on port {port}.") sock.close() except Exception as e: print(f"Error: {e}") # 替换为实际的 ECS 公网 IP 和端口号 check_remote_connection('your_ecs_ip', 22) ``` ### 注意事项 - 确保 ECS 实例的安全组规则允许来自客户端的 SSH 请求(默认端口为 22)。 - 如果使用密钥对认证,需确保私钥文件的权限正确,通常设置为 `chmod 400 private_key.pem`[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值