编程基础
基础
程序:指令+数据
程序编程风格:
过程式:以指令为中心,数据服务于指令
对象式:以数据为中心,指令服务于数据
shell程序:提供了编程能力,解释执行
程序执行方式
计算机:运行二进制指令
编程语言:
低级:汇编
高级:
编译:高级语言--->编译器--->目标代码
java,c#
解释:高级语言--->解释器--->机器代码
shell,perl,python
编程基本概念
编程逻辑处理方式:
顺序执行
循环执行
选择执行
shell编程:过程式、解释执行
编程语言的基本结构:
各种系统命令的组合
数据存储:变量、数组
表达式:a+b
语句:if
格式要求
首行shebang机制
#!bin/bash
shell脚本的用途
自动化常用命令
执行系统管理和故障排除
创建简单的应用程序
处理文本或文件
注释#开头
远程运行脚本
curl http://192./helloword.sh/ bash
正则表达式
.任意字符
*表示前面字符任意重复次
表示单词重复任意次数(word)*
+前面字符重复1次以上
也可以x{1,2,3}
?0次或1次 懒惰模式
^行首$行尾
\<词首\b
\>词尾\b
[wang] 任意一个字符
[^.]除了
[:word:]关键字
(a|b)xy a或b
(exper1)(exper2)\1\2
vim
:%s/xyz/&er/g替换所有的xyz为&er
不加g,只替换第一个xyz
ifconfig ens33| grep -o ...
0-9 [0-9]
10-99 [1-9][0-9]
100-199 1[0-9][0-9]
未完待续。。。
脚本调试
检测脚本中的语法错误
bash -n /path/to/some_script
调试执行
bash -x /path/to/some_script
变量
变量:命名的内存空间
数据存储的方式:字符 数值:整型,浮点型
变量:变量类型
作用:1数据存储格式2参与运算3表示的数据范围
类型:字符 数值:整型,浮点型
引用变量必须加$符号
echo "$name"输出命令加引号可以保留原格式的值
echo $$当前进程编号,echo $ppid 父进程编号
更直观查看
pstree -p
浙公网安备 33010602011771号