shell脚本实例一
脚本时一种解释性语言;
shell脚本保存执行动作;
脚本判定命令的执行条件
脚本来实现动作的批量执行。
二、如何创建
vim test.sh ##shell脚本一般都是以.sh结尾
三、执行方法
1.sh test.sh ##不执行开头的的命令
2.chmod +x test.sh
/mnt/test.sh ##执行的时候会先执行以#开头的第一句
sh -x test.sh ##适用于所有脚本
vim test.sh ##脚本必须有X权限
示例一、执行脚本编写的时候自动添加头部
vim /etc/vimrc
"map <F4> ms:call Xniu()<cr>'s ##按快捷键添加
autocmd BufNewFile *.sh,*.script exec ":call Xniu()" ##新建的文件会自动添加
func Xniu()
call append(0,"########################")
call append(1,"# Author : #")
call append(2,"# Date :".strftime("%Y-%m-%d").(" #"))
call append(3,"# Mail : #")
call append(4,"# Version : #")
call append(5,"# #")
call append(6,"########################")
call append(8,"#!bin/bash")
endfunc
示例二:编写脚本显示主机名,ip和可用用户
vim /mnt/show_massage.sh
#!bin/bash
echo "your hostname: "$(hostname)
echo "ip: "$(ifconfig eth0 | grep inet| head -n 1| cut -d " " -f 10)
echo "user for login : "$(grep -E "bash$|tcsh$|sh$|csh$" /etc/passwd |out -d : -f 1)
示例三:编写脚本清空日志
vim /mnt/clear_log.sh ##代码编写如下
#!bin/bash
user=`whoami`
[ "$user" = "root" ]||{
echo -e "\033[31mplease run this script with root!\033[0m"
exit
}&&{
rm -rf /var/log/message /var/log/maillog /var/log/boot.log /var/log/secure
touch /var/log/message /var/log/maillog /var/log/boot.log /var/log/secure
echo clear all
}
示例四:颜色的控制格式
echo -e "\033[40,32m内容\033[0m"
示例五: 对http的端口的修改
vim /mnt/apache_test.sh ##进行脚本的编写
echo Error:Apache is not installed
exit
}
sed "/^Listen/cListen $1" -i /etc/httpd/conf/httpd.conf
systemctl restart httpd
测试:sh /mnt/apache_test.sh 11
netstat -antlupe | grep http ##查看到端口
示例六:用户的创建和删除
mass=`getent passwd $1`
[ -z "$mass" ]&&{
read -p "$1 is not exist,you can do this:
[C]reate [S]kip
wha do you what:" choose
[ "$choose" = "C" -o "$choose" = "c" ]&&{
useradd $1
read -p "input passwd:" pas
echo $pas|passwd --stdin $1 &> /dev/null
echo "$1 is create!!"
exit
}
[ "$choose" = "S" -o "$choose" = "s" ]&&{
echo bye!!
exit
}
shell脚本实例一的更多相关文章
- 分享7个shell脚本实例--shell脚本练习必备
概述 看多shell脚本实例自然就会有shell脚本的编写思路了,所以我一般比较推荐看脚本实例来练习shell脚本.下面分享几个shell脚本实例. 1.监测Nginx访问日志502情况,并做相应动作 ...
- shell脚本实例,通向shell脚本大师的必经之路
概述 读书百遍其义自见,shell脚本也是,只要例子看得多了,自然就知道怎么写了.这里主要整理了20几个例子,因为内容比较多,所以分了几次来做介绍了.下面的实例最好先自己思考怎么去实现,然后再看下实现 ...
- shell脚本实例-系统监控
shell脚本监控网站并实现邮件.短信报警shell进程监控脚本(发送邮件报警)Shell脚本监控服务器在线状态和邮件报警的方法 http://www.jbxue.com/jb/shell/ 11. ...
- shell脚本实例
备注:一些与传递给shell的参数相关的变量:$# 命令行参数的个数$? 调用命令的返回值$$ 当前进程的进程号$! 最后一个后台命令的进程号$0 命令行的第一个参数,也就是命令名$n 命令行的第n个 ...
- shell脚本实例一,移动文件夹中大于2000B的文件到另一个文件夹
shell脚本能帮我们简化linux下的一些工作,现在有个需求,把TMPA文件夹下大于2000B的文件都移动到TMPB下 #! /bin/bash function movefiles() { ` d ...
- shell脚本实例-mysql多机部署
今天我给大家分享shell 安装mysql 多机部署的实例,本次实验是基于各个主机的公钥已经配置好了,如果还不会推送公钥的同学,可以看看我以前写的文章,那里面有写推公钥的实例,mysql 多机部署一般 ...
- shell脚本实例-菜单样例
1.9.1 实例需求 用户在进行Linux系统管理的过程中,经常需要用到查看进程的信息.用户的信息等常用的功能.本例针对这一需求,使用shell编程实现基本的系统管理 功能.通过本程序,可以按照要求实 ...
- shell脚本实例(2)
1.传给脚本一个参数:目录,输出该目录中文件最大的,文件名和文件大小 #!/bin/bash if [ $# -ne 1 -o ! -d $1 ];then echo "Args is er ...
- 【shell脚本实例】一个恶作剧—— kill掉占用CPU较高的matlab进程
我们实验室有台服务器,博士们在服务器上跑MATLAB,基本都是4核都是超过95%的CPU占用,想了个恶作剧的shell 定时kill掉MATLAB程序,是不是很邪恶啊,哈哈~~~ 不过我只是干过一次 ...
随机推荐
- go基础语法
定义变量: 可放在函数内,或直接放在包内使用var集中定义变量使用:=定义变量写的短一些 package main import ( "fmt" "math" ...
- 20145314郑凯杰 《Java程序设计》实验四 实验报告
20145314郑凯杰 <Java程序设计>实验四 实验报告 实验要求 完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用 ...
- Docker 的一些使用心得
Docker 的使用心得 预备知识·必备· bash(bsd) Net ,ip know hot to search in Google and Baidu 安装 一般找一个不错的网络环境...不然玩 ...
- TCP协议三次握手过程分析(改)
TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接: 位码即tcp标志位,有6种标 ...
- 翻翻git之---丰富多样的路由跳转开源库 ARouter
转载请注明出处:王亟亟的大牛之路 有一段时间没更新博客了,最近也没学什么新东西,正好组里小伙在做路由跳转的一个"公共库",然后正好最近这样的轮子不少,我也就跟着看看,学习一下人家的 ...
- 【网络结构】VGG-Net论文解析
目录 0. 论文链接 1. 概述 2. 网络结构 2.1 卷积核 2.2 池化核 2.3 全连接层 3. 训练 4. 测试 5. 其他 6.参考链接 @ 0. 论文链接 论文链接 1. 概述 VG ...
- 【论文解析】MTCNN论文要点翻译
目录 0.论文连接 1.前言 2.论文Abstract翻译 3.论文的主要贡献 4.4 训练 5 模型性能分析 5.1 关于在线挖掘困难样本的性能 5.2 将人脸检测与对齐联合的性能 5.3 人脸检测 ...
- 【转】jQuery的attr与prop
原文:<jQuery的attr与prop> jQuery1.6中新添加了一个prop方法,看起来和用起来都和attr方法一样,这两个方法有什么区别呢?这要从HTMl 的attribute与 ...
- ubuntu install git vim Plug manage
在UBUNTU采用163或是阿里云来更新源,最新的更新源地址可以在网上查阅, 阿里源 deb http://mirrors.aliyun.com/ubuntu/ bionic main restric ...
- MySQL Order By Rand()效率分析
最近研究了一下MYSQL的随机抽取实现方法.举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() L ...