1. 字符串相关
1.1. 判断字符串是否为空
if [ -z "$name"];then
echo "name is null"
fi
1.2. 判断字符串相等
if [ "$name" == "zhangsan"];then
echo "is zhangsan"
elif [ "$name" == "lisi" ];then
echo "is lisi"
else
echo "is other"
fi
1.3. 判断字符串包含
if echo "$name" | grep -q "zhang";then
echo "name is contains zhang"
fi
2. 文件相关
2.1. 判读文件是否存在
fileName=/home/aa.txt
if [ ! -f $fileName ];then
echo "file '$fileName' is not exists"
exit 1
fi
2.2. 创建空文件
fileName=/home/aa.txt
if [ ! -f $fileName ];then
echo "file '$fileName' is not exists"
touch $fileName
fi
2.1. 判读文件夹是否存在
path=/home/mysql
if [! -d $path ];then
echo "path '$path' is not exists"
mkdir -p $path
fi
文件夹创建
#创建多级文件夹
mkdir -p /home/nacos/init.d
#创建多个文件夹
mkdir -p /home/nacos/{data,logs,conf}
3. 压缩包相关
3.1. tar包
# 解压tar包
tar -xvf test.tar.gz
# 解压到指定目录
tar -xvf test.tar.gz -C ./test_1
# 压缩
tar -cvf test.tar.gz ./test_1/*
4. 循环
4.1. for循环
for i in "$@"
do
echo $i
...
done
4.2. while循环
while getopts 'h:u:p:' OPT; do
case $OPT in
h) HOST="$OPTATG";;
u) USER="$OPTATG";;
p) PASSWORD="$OPTATG";;
?) echo "error : unknow flag";;
exit 1
esac
done
5. RPM相关
5.1. 查询系统已安装的rpm包
#1.查询系统已安装的rpm包
rpm -qa
#1.1.查询指定已安装的rpm包,比如包名为test1
rpm -qa | grep test
5.2. 查询已安装的软件包的相关文件的安装路径
#查询指定已安装的rpm包的相关,比如服务名为test
rpm -ql test
5.3. 查询一个已安装软件包的信息
rpm -qi test
5.4. 查看已安装软件所依赖的软件包及文件
rpm -qR test
6. 设置软件开机启动
6.1. rc.local文件中添加自启动命令
- 编写程序的启动命令,并赋予权限
- 编辑/etc/rc.local,添加启动命令
vim /etc/rc.loacl
#增加如下命令 [/usr/local/app 为自定义启动命令位置] [./appStart.sh 为自定义启动脚本]
cd /usr/local/app & ./appStart.sh
#为rc.local赋权
chmod +x /etc/rc.local
6.2. /etc/init.d目录下添加自启动脚本
在Linux /etc/rc.d/init.d 下通常会放一些可执行启动脚本。Linux开机启动的时候就会执行这些脚本 ,因此我们将需要开机启动的执行脚本放在此目录下,开机就会被执行。(注意:放入的脚本必须赋权为可执行文件。)
6.3. 制作Linux服务设置开机启动
- 以Nginx为例,前提:Nginx已安装,安装目录为/usr/local/nginx
- 制作Nginx服务
touch /etc/systemd/system/nginx.service
vim nginx.service
nginx.service
[Unit]
Description=nginx - high performance web server
After=nginx.service
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
Execenable=/usr/local/nginx/sbin/nginx
[Install]
WantedBy=multi-user.target
设置开机启动
#赋予可执行权限
chmod +x nginx.service
#重新加载service
systemctl daemon-reload
#设置开机启动
systemctl enable nginx.service
7. 系统信息
7.1. 查看已安装的Linux系统版本
cat /proc/version
未完待续…