linux shell基础知识
-
shell是一门弱类型的语言
-
shell脚本文件通常以.sh结尾
-
shell脚本的注释符号是#
-
shell脚本的第一行一般是这样的内容
- 这一行的意义在于声明解释器
-
系统中的解释器
-
在/etc/shells这个文件中有系统支持的各种shell
[root@CSDN ~]# less /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh
-
linux shell中相关命令语句
输出打印 echo
[root@CSDN home]# echo hello world
hello world
[root@CSDN home]# echo 'hello world'
hello world
[root@CSDN home]# echo "hello world"
hello world
[root@CSDN home]# echo i\'m a teacher #使用转义符\将特殊符号'显示出来
i'm a teacher
[root@CSDN home]# job=teacher #定义一个变量
[root@CSDN home]# echo $job #使用该变量
teacher
接受用户输入 read
-
语法
read [-p "提示信息"] 变量 read [-p "提示信息"] 变量1 变量2
[root@CSDN home]# read -p "please input a value:" num please input a value:3 [root@CSDN home]# echo $num 3
显示环境变量 env
[root@CSDN ~]# env
HOSTNAME=CSDN
SELINUX_ROLE_REQUESTED=
TERM=vt100
SHELL=/bin/bash
……
……
……
导出到环境变量 export
-
语法
export VAR=VALUE #定义变量的时候导出到环境变量 var=value #分步 export var
-
export定义的变量能在env中看到,也能被其他的会话看到
使配置生效 source
-
语法
source 配置文件 . 配置文件
-
source或.读取配置文件,跟重登陆的区别在于,重登陆只会读取固定的配置文件(/etc/profile、/etc/bashrc、/etc/profile.d下的sh文件、~/.bashrc),而source和点可以读取任意的配置文件,而且不需要退出重登陆
显示日期 date
-
示例
[root@CSDN home]# date Sat May 15 19:50:30 CST 2021
-
还可以定义显示的日期的格式
[root@CSDN home]# date +%Y%m%d%H%M%S%w 202105151953436
-
可定义的格式由很多,具体的可以用man date查看
常用的有- %Y:当前年
- %m:当前月
- %d:当前日
- %H:当前小时
- %M:当前分钟
- %S:当前秒
- %w:当前周几(0-6,0代表周日)
产生一个序列 seq
seq:sequence:序列
-
[root@CSDN home]# seq 5 1 2 3 #序列为1-5 4 5 [root@CSDN home]# seq 2 5 2 3 #序列为2-5 4 5 [root@CSDN home]# seq 1 2 10 1 3 5 #序列为1-10,间隔为2 7 9
if 结构语句
if 条件表达式
then条件表达式为真做的事情
else条件表达式为假做的事情
fi
-
条件表达式
例如判断变量a的值是否大于0 if