shell - 0.简单介绍
2016-05-12 09:56
441 查看
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
root@WebB:/home/log# ls -lah /bin/sh
lrwxrwxrwx 1 root root 4 Nov 14 15:15 /bin/sh -> dash [实际上使用的是dash]
root@WebB:/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
本文出自 “走起运维” 博客,转载请与作者联系!
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
root@WebB:/home/log# ls -lah /bin/sh
lrwxrwxrwx 1 root root 4 Nov 14 15:15 /bin/sh -> dash [实际上使用的是dash]
root@WebB:/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
本文出自 “走起运维” 博客,转载请与作者联系!
相关文章推荐
- Linux下的bash
- hdu_2446_Shell Pyramid(数学,二分)
- hdu_2446_Shell Pyramid(数学,二分)
- linux set profile bashrc source 非交互/交互式用户登录 for循环
- Java实现-高效排序算法之Shell排序
- [shell] file
- shell脚本部署无密码访问
- shell脚本
- spark-shell启动报错:./spark-shell: line 44: 5271 已杀死
- shell脚本替换文件中字符
- shell脚本学习笔记(1)
- linux shell ; || &&的区别
- 关于xshell 被avast防火墙拦截!解决方法!
- windows 64 位安装xshell5出现的一系列问题
- 初学shell(必须掌握的20条指令)
- paramiko exec_command 返回 shell 脚本 exit 值
- bash sh 用法区别
- HDU2149(巴什博弈Bash Game)
- shell 脚本传入参数
- 用shell批量修改类似的文件名