暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

shel脚本基础系列(一)变量

java基础笔记 2022-01-04
476



一、背景

虽然自己是一名java程序员,做后端的,但是最近工作中经常需要看别人写的脚本去运行项目,所以作为后端程序员,我们也需要了解一下shell语法,会读懂一些基本的shell脚本。

二、变量相关

1、变量赋值

(1)普通变量赋值

1a="hello world"

(2)通过命令赋值给变量,两种方式。

1a=$(pwd)
2
3b=`uname`

2、取消变量
1unset A

3、获取变量的长度
1${#b}

4、变量内容的删除

(1)删除语法

%

代表从右往左去掉第一个匹配的

%%

从右往左去掉所有匹配的

#

代表从左往右去掉第一个匹配的

##

代表从左往右去掉所有匹配的

eg:

1#返回 text
2a=a.txt
3echo ${a##*.}


5、变量内容的替换

(2)替换语法

${变量名/旧值/新值}

eg:

1#返回b.txt
2a=a.txt
3echo ${a/a/b}

6、打印变量

(1)方式一

1echo $a

(2)方式二

1echo ${a}

7、查询环境变量

(1)查看当前环境变量

1env

(2)筛选环境变量

1env | grep Name

(3)支持筛选普通变量或者环境变量

1set | grep Name

8、定义一个环境变量

(1)方式一

1declare -x BBB=jiankang

(2)方式二

1export DDD=jiankang

9、全局变量配置文件


(1)更改后都需要source让其生效

全局配置环境变量

/etc/profile
当前用户的环境变量home/.bash_profile
当前用户的bash信息/home/.bashrc
所有用户生效的全局bash信息/etc/bashrc

全局配置环境变量

1/etc/profile

10、系统变量
$?上一条命令是否正常执行 0表示正常(真) 非0表示执行异常
$0当前执行程序或者脚本名
$#脚本后面传的参数个数
$*脚本后面所有参数,逗号分隔
$@脚本后面所有参数
$1脚本后面所跟的第一个参数
$9脚本后面所跟的第九个参数
${10}脚本后面所跟的第十个参数
$$当前所在进程的进程号

$!

后台运行的最后一个进程号(当前终端)
!$

调用最后一条命令历史中的参数

三、总结

以上就是就是关于shell语法变量相关所有内容,希望对大家有帮助,可以参考一下,觉得不错的话,欢迎微信搜索关注java基础笔记,后面会不断更新相关知识,大家一起进步。
文章转载自java基础笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论