由于shell脚本在java项目运维方面极其重要,比如服务的启动脚本,日志的分割脚本,文件的管理脚本大多都是shell脚本去实现的。所以作为java开发者懂linux的基本命令,会基本的shell编程是必要的。
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。
Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
举一个示例
#!/bin/bash
echo "Hello World !"
或者
#!/bin/sh
echo "Hello World !"
在一般情况下,人们并不区分 Bourne Shell 和 Bourne Again Shell,所以,像 #!/bin/sh,它同样也可以改为 #!/bin/bash。
1、所有的shell脚本都以.sh后缀文件保存。
如:这是命令控制台输出Hello world ! Hello maoheyeren! 字符串的命令shell。
如保存为 m.sh
在运行之前需要添加运行权限
chmod +x m.sh
这样我们就可以在控制台输出 Hello world ! Hello maoheyeren!
2、变量的命名:
your_name="maoheyeren"
变量的使用
your_name="maoheyeren"
echo $your_name
echo ${your_name}
输出:
Hello world ! Hello maoheyeren!
maoheyeren
maoheyeren
拼接字符串
your_name="maoheyeren"
# 使用双引号拼接
greeting="hello, "$your_name" !"
greeting_1="hello, ${your_name} !"
echo $greeting $greeting_1
# 使用单引号拼接
greeting_2='hello, '$your_name' !'
greeting_3='hello, ${your_name} !'
echo $greeting_2 $greeting_3
shell数组声明
array_name=(value0 value1 value2 value3)
读取数组
valuen=${array_name[n]}
读取字符串长度:
string="abcd"
# 输出 4
echo ${#string}