Linux 实用命令:环境变量、文件传输、压缩解压、跨服务器传文件

前言

刚接触 Linux 服务器时,很多人会卡在环境变量配置、文件上传下载、压缩包处理、多服务器互传文件这几个高频场景。本文结合实操案例,整理一套日常开发运维必备 Linux 操作,覆盖环境变量、rz/sz、tar/zip、scp 四大核心知识点,新手可直接复制命令实操。

一、Linux 环境变量详解

1. 什么是环境变量

环境变量是 Windows / Linux / Mac 系统运行时存储关键信息的键值对(Key=Value),系统运行时会自动读取里面的配置信息辅助工作。
Linux 查看所有环境变量命令:

env

常见内置环境变量含义:

变量名 作用
HOME 当前用户家目录
USER 当前登录用户名
PWD 当前所在工作目录
PATH 系统命令搜索路径(重中之重)

2. PATH 环境变量核心作用

无论你在哪个目录下都能直接执行系统命令,全靠 PATH。
PATH 内部用 : 分割多个目录,执行命令时系统会按顺序遍历目录查找程序文件。

查看 PATH 内容:

env | grep PATH

示例输出:

PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/itheima/.local/bin:/home/itheima/bin

执行 cd 时,系统会依次检索上述目录,在 /usr/bin 找到 cd 程序并运行。

3. 自定义环境变量(临时/永久)

3.1 临时环境变量(重启/重登失效)

语法:export 变量名=变量值

# 定义临时变量
export ITHEIMA=666
# 读取变量
echo $ITHEIMA
3.2 永久环境变量
  1. 仅当前用户生效
    编辑用户配置文件 ~/.bashrc
vim ~/.bashrc
# 文件末尾添加自定义变量
export ITHEIMA=666
# 新增自定义命令路径到PATH
export PATH=$PATH:/home/itheima/myenv
  1. 所有用户全局生效
    编辑系统配置 /etc/profile
vim /etc/profile
# 末尾写入export配置
export PATH=$PATH:/home/itheima/myenv
  1. 配置立即生效,不用重新登录
source ~/.bashrc
# 全局配置生效
source /etc/profile

4. 自定义 PATH 实战:自定义全局命令

需求:自己写一个脚本,任意目录都能直接执行

  1. 创建存放脚本目录
mkdir ~/myenv
vim ~/myenv/mkhaha
  1. 脚本写入内容
echo "哈哈哈哈哈"
  1. 临时追加路径到PATH
export PATH=$PATH:/home/itheima/myenv
  1. 任意目录执行 mkhaha 即可运行脚本。如需永久生效,把上面 export 写入 .bashrc

二、服务器文件上传下载:rz / sz

1. 工具安装

rz、sz 依赖 lrzsz 工具,CentOS 安装命令:

yum -y install lrzsz

2. 上传文件 rz

直接输入命令,弹出本地文件选择窗口,选中文件上传至当前服务器目录

rz

3. 下载文件 sz

将服务器文件下载到本地(FinalShell 会默认存到 fsdownload 文件夹)

sz test.txt

三、Linux 压缩与解压:tar、zip 完整教程

主流压缩格式区分

格式 使用场景 工具
tar Linux/Mac 归档,仅打包不压缩 tar
tar.gz Linux 最常用,gzip 压缩 tar + -z 参数
zip Windows/Linux/Mac 通用跨平台 zip / unzip

1. tar 命令参数说明

tar [-c -v -x -f -z -C]
  • -c:创建压缩包(压缩模式)
  • -x:解压模式
  • -v:显示打包/解压过程
  • -f:指定压缩包文件名,必须放在所有参数最后
  • -z:启用 gzip 压缩(对应 .tar.gz)
  • -C:指定解压目标目录
1.1 tar 打包(不压缩,.tar)
# 打包多个文件
tar -cvf test.tar a.txt b.txt
# 打包文件夹
tar -cvf dir.tar myenv/
1.2 tar.gz 压缩(gzip 压缩,体积更小)
tar -zcvf test.tar.gz a.txt myenv/
1.3 tar 解压操作
# 解压 tar 包到当前目录
tar -xvf test.tar

# 解压 tar 包到指定目录
tar -xvf test.tar -C /home/itheima

# 解压 tar.gz 压缩包到指定目录
tar -zxvf test.tar.gz -C /home/itheima

2. zip 压缩命令

-r 参数:压缩文件夹必须加 -r 递归处理子文件

# 压缩多个文件
zip test.zip a.txt b.txt c.txt

# 压缩文件夹+文件
zip -r test.zip myenv/ Desktop/ a.txt

3. unzip 解压 zip 包

-d:指定解压目录

# 解压到当前目录
unzip test.zip

# 解压到指定文件夹
unzip test.zip -d /home/itheima

四、跨服务器传输文件:scp 命令

1. scp 介绍

scp = secure cp,基于 SSH 协议在两台 Linux 服务器之间传输文件/文件夹,只要两台机器互通 SSH,知道账号密码/密钥即可传输。
参数 -r:传输文件夹必须加 -r 递归复制。

2. 基础语法

scp [-r] 源路径 目标路径
# 远程格式:用户名@主机IP:服务器路径

3. 常用示例

示例1:本机文件夹传到远程服务器

将本机 /export/server/jdk 文件夹传到 node2 服务器 root 用户下 /export/server/

scp -r /export/server/jdk root@node2:/export/server/
示例2:远程服务器文件拉取到本机

将 node2 服务器的 jdk 文件夹下载到本机 /export/server/

scp -r node2:/export/server/jdk /export/server/
4. 高级用法:同步当前目录
# 把本机当前目录jdk文件夹,传到远程同路径
scp -r jdk node2:$PWD
# 等价写法
scp -r jdk node2:'pwd'/

总结

  1. 环境变量:PATH 决定命令全局调用,临时变量 export,永久变量配置 bashrc / profile + source 生效;
  2. 文件传输:rz 上传、sz 下载,适合本地和单台服务器互传;
  3. 压缩解压:tar.gz 是 Linux 首选,zip 用于跨 Windows 交互;
  4. 多服务器传文件:scp 基于 SSH,批量部署、集群同步必备。
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐