Shell-0.介绍
1.在那些环境用会用到shell脚本
·应用环境:执行某些命令需要多项复杂的参数
需要多条命令对系统进行状态查看和维护管理
定期进行数据库的备份
根据特定条件监控系统重要进程和日志
每周对主要系统进行一次巡检
对重要网络设备的配置文件进行安全分析,并给出相应的分析报告
对网络中的设备进行探测,采集相关资产信息,并录入资产信息表
例如:
·通过命令:每次都要仔细检查语法和参数
编写详细的系统维护文档,将要维护的命令都列出来,管理员照着系统维护文档进行操作。
每天下午6点,执行数据库的备份
每隔10或15分钟执行一次监控,命令或查看系统屏幕
工作量大,数据不好整理
2.什么是Shell
Shell----内核----硬件
请查看
http://yuanji6699.blog.51cto.com/11568362/1771930
3.Shell脚本的组成元素
·注释
·系统命令
·文本处理工具(sort,grep,sed,awk...)
·变量
·条件判断
·循环结构
·函数
4.查看系统支持那些shell
debian:/myshell# cat /etc/shells
# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/bash
/bin/rbash
这么多,基本都是用bash
5.查看当前用户使用的sh类型
debian:/myshell# echo $SHELL 【注意这个可能不正确】
/bin/bash
应该用 【使用之前一定要检查一下,个别系统版本默认不是bash】
ls -alh /bin/sh
[email protected]:/home/log# ls -lah /bin/sh
lrwxrwxrwx 1 root root 4 Nov 14 15:15 /bin/sh -> dash [实际上使用的是dash]
[email protected]:/home/log# echo $SHELL
/bin/bash
解决方法:
-----------
那么怎么把sh改为指向bash呢?
最暴力的方法当然是直接把/bin/sh的软链接改到bash中,
如:ln -s /bin/bash /bin/sh
再次检查一下, ls /bin/sh -al 发现软链接指向/bin/bash就可以了。
-------------
6.第一个脚本(国际惯例,hello world)
debian:/# vim first.sh
#!/bin/sh
echo "Hello world"
debian:/# sh first.sh
Hello world
debian:/# chmod +x first.sh
debian:/# ./first.sh
Hello world
之后
debian:/myshell# echo $? (这部分后面详细介绍)
0
如果是0,表示正常
以上个人一点点总结和理解,水平不高,文笔水平很烂,请各位大大见谅。
可以一起交流学习。
我的QQ:610851588
可以加入我建的群(现在群人很少,希望慢慢多起来)
Linux 群:183932302
Python ,shell 交流群:469094734