脚本常用的工具
AWK是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一。
基本用法
awk -F: '{if(length($2)>3) print $1}' /etc/shadow
sort 文本内容排序
cat /etc/passwd|sort -t ':' -nk 3 从小到大,以冒号为分隔符,第三列。
cat /etc/passwd|sort -t ':' -nrk 3 从大到小
uniq 重复内容合并
通常配合sort一起使用
sort |uniq -c 显示每一项重复的次数
变量的作用
用来存放系统和用户需要的特定数值,变量赋值格式:变量名=变量值
变量名:使用固定的名称,由系统预设或用户定义
变量值:能够根据用户设置、系统环境的变化而变化
变量的类型
自定义变量:由用户自己定义、修改和使用
全局变量:在子shell中仍然能使用的变量
环境变量:由系统维护,用于设置工作环境
位置变量:通过命令行给脚本程序传递参数
预定义变量:Bash中内置的一类变量,不能直接修改
常见的变量类型
预定变量
由bash预先设定好的一类特殊变量
$#:表示位置参数的个数
$*:表示位置参数的内容
$$:当前进程的进程PID号
$?:前一条命令执行完后的返回状态0表示正确,非0表示异常
$0:当前执行的脚本或程序名称
位置变量
表示为 $n,n为1~9之间的数字
./脚本名称 $1 $2
例如./simple.sh one two three four five six
if语句结构
多分支结构语法
if 条件测试操作A
then 命令序列A
elif 条件测试操作B
then 命令序列B
else
命令序列C
fi
循环语句
for循环语句结构
for 变量 in 取值列表
do
命令
done
while语句结构
while 条件
do
命令
done
case语句语法结构
case 变量 in
模式A)
命令A
## 学习路线:
这个方向初期比较容易入门一些,掌握一些基本技术,拿起各种现成的工具就可以开黑了。不过,要想从脚本小子变成黑客大神,这个方向越往后,需要学习和掌握的东西就会越来越多以下是网络渗透需要学习的内容:
![在这里插入图片描述](https://img-blog.csdnimg.cn/7a04c5d629f1415a9e35662316578e07.png#pic_center)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化资料的朋友,可以点击这里获取](https://bbs.csdn.net/topics/618540462)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**