shell-用户自定义变量预定义变量环境变量

Posted 栗子~~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell-用户自定义变量预定义变量环境变量相关的知识,希望对你有一定的参考价值。

文章目录

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


shell-用户自定义变量、预定义变量、环境变量

01 用户自定义变量

序号命令含义
1unset删除变量
2readonly标记只读变量
3export全局变量

01::01 unset 例子

01::02 readonly 例子

01::03 export 例子

test1.sh

#!/bin/bash
NAME=yangzhenyu
export SEX=man
sh test1_1.sh

test1_1.sh

#!/bin/bash
echo $NAME
echo $SEX

测试:

很明显,全局变量声明成功,可以在子shell那边获取到,而普通变量获取不到。


02 预定义变量

序号命令含义
1$0脚本文件名
2$1-9第 1-9 个命令行参数名
3$#命令行参数个数
4$@所有命令行参数
5$*所有命令行参数
6$?前一个命令退出状态,可用于获取函数返回值
7$$执行的进程ID

测试:

#!/bin/bash

echo "\\$0 = $0"
echo "\\$1 = $1"
echo "\\$3 = $3"
echo "\\$4 = $4"
echo "\\$# = $#"
echo "\\$@ = $@"
echo "\\$* = $*"
echo "\\$$ = $$"
echo "\\$? = $?"

执行结果:

执行接口翻译:

$0 = ./test1.sh  #程序名
$1 = 1   #第一个参数
$3 = 3   #第三个参数
$4 = 4   #第四个参数
$# = 5   #一共有5个参数
$@ = 1 2 3 4 5 #打印出所有参数
$* = 1 2 3 4 5 #打印出所有参数
$$ = 69247  #进程ID
$? = 0  #之前没有执行其他命令或者函数

03 常用的环境变量

序号命令含义
1HOME用户主目录
2PATH系统环境变量 PATH
3TERM当前终端
4UID当前用户ID
5PWD当前工作目录,绝对路径

测试:

#!/bin/bash

echo $HOME
echo $PATH
echo $TERM
echo $UID
echo $PWD

以上是关于shell-用户自定义变量预定义变量环境变量的主要内容,如果未能解决你的问题,请参考以下文章

003-环境变量

环境变量

Shell学习之Bash变量详解

SHELL笔记7

Shell编程Shell中Bash变量-环境变量

Shell编程Shell中Bash变量-环境变量