linux的export命令
export 是 Linux/Unix shell 中的一个内置命令,主要用于将 shell 变量或函数导出为环境变量,使其在当前 shell 及其子进程中可用。
基本语法
1export [-fn] [name[=value] ...] 2export -p
主要参数
-f:将函数作为环境变量导出-n:从导出的变量中移除指定名称-p:列出所有导出的变量(这是默认行为)
使用示例
1. 导出变量
1export MY_VAR="Hello World"
这会将 MY_VAR 设置为环境变量,其值为 "Hello World"
2. 查看导出的变量
1export -p 2# 或直接输入 3export
3. 导出现有变量
1MY_VAR="Hello" 2export MY_VAR
4. 导出函数
1myfunc() { echo "This is a function"; } 2export -f myfunc
5. 取消导出变量
1export -n MY_VAR
实际应用场景
-
PATH 环境变量设置
1export PATH=$PATH:/usr/local/bin -
临时设置语言环境
1export LANG=en_US.UTF-8 -
脚本中设置环境变量
1#!/bin/bash 2export DB_HOST="localhost" 3export DB_PORT="3306" -
设置开发环境变量
1export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 2export PATH=$PATH:$JAVA_HOME/bin
注意事项
- 导出的变量只在当前 shell 及其子进程中有效,不会影响父进程
- 要使变量永久生效,需要将
export命令添加到 shell 的配置文件(如~/.bashrc或~/.bash_profile) - 环境变量名称通常使用大写字母,这是约定俗成的做法
- 变量值中包含空格时,需要用引号括起来
与普通变量的区别
| 特性 | 普通变量 | 环境变量 (export) |
|---|---|---|
| 作用范围 | 当前 shell | 当前 shell 及其子进程 |
| 子进程可见 | 不可见 | 可见 |
| 持久性 | shell 退出后消失 | shell 退出后消失 |