shel脚本编程入门

简单的sh编写大致操作:

cat > hello.sh    #创建一个sh

echo 'hello world'   #注入文本

ls   #显示文件

chmod +x kello.sh   #给sh加权限

ls   #看权限是否加上

hello.sh   #尝试运行

echo $PATH   #查看新编写sh是否在里面

/data/hello.sh   #新写的sh注入PATH

或者:

mkdir /root/bin

mv hello.sh /root/bin

hello.sh

 

编写的sh启动方式:

bash hello.sh   #无需加入权限直接运行sh命令

cat hello.sh |bash    #查看hello.sh

curl http://xxx.xxx.com/xxx.sh |bash   #远程访问并运行某网址的sh文件,远程调用

注意事项:

格式要求:首行shebang机制(标注使用哪种shell)
#!/bin/bash
#!/usr/bin/ python
#!/usr/bin/perl

脚本代码开头约定
1、第一行般为调用使用的语言
2、程序名,避免更改文件名为无法找到正确的文件
3、版本号
4、更改后的时间
5、作者相关信息
6、该程序的作用,及注意事项
7、最后是各版本的更新简要说明

简单示例:

#!/bin/bash
# Filename: hello.sh
# Revision:1.1
# Date:201 7/06/01
# Author:wang
# Email:wang@gmail.com
# Website:www.magedu.com
# Description: This is the first script
# Copyright: 2017 wang
# License:GPL
echo "hello world"

 

正则表达式:

举例:

ifconfig ens33   #centos6的ip地址

ifconfig ens33 |grep -o 0-255

0-9 [0-9] 10-99 [1-9][0-9] 100-199 1[0-9][0-9] 200-249 2[0-4][0-9] 250-255 25[0-5]   #拆分

"(([0-9] | [1-9][0-9] | 1[0-9][0-9] | 2[0-4][0-9] | 25[0-5])\.){3}([0-9] | [1-9][0-9] | 1[0-9][0-9] | 2[0-4][0-9] | 25[0-5])"

实用:

ifconfig  |egrep -o "(([0-9] | [1-9][0-9] | 1[0-9][0-9] | 2[0-4][0-9] | 25[0-5])\.){3}([0-9] | [1-9][0-9] | 1[0-9][0-9] | 2[0-4][0-9] | 25[0-5])"

 

检测脚本中的语法错误
bash -n /path/to/some_ _script
调试执行
bash -x  /path/to/some_ script

eg:bash -x hello.sh

 

查看进程关系:pstree -p

 

export 环境变量

unset 删除变量

 

 

 

点赞

发表评论

昵称和uid可以选填一个,填邮箱必填(留言回复后将会发邮件给你)
tips:输入uid可以快速获得你的昵称和头像

Title - Artist
0:00