【【shell】shell脚本实战-awk工作模式讲解】教程文章相关的互联网学习教程文章

shell脚本——项目1

案例名称:系统初始化 背景:10台已装有linux系统的服务器 需求: 1.设置时区同步 2.禁用selinux 3.清空防火墙策略 4.历史命令显示操作时间 5.禁止root远程登录 6.禁止定时任务发送邮件 7.设置最大打开文件数 8.减少Swap使用 9.系统内核参数优化 10.安装系统性能工具及其他 脚本具体内容 #!/bin/bash#Set time zone and together timeif ls /etc/localtime >/dev/null 2>&1;then rm -f /etc/localtimefiln -s /usr/share/zone...

案例一:shell脚本指定日期减去一天【代码】

如果只减去一天的话,直接写就可以了。 #date -d"yesterday 20150401" +%Y%m%d如果要减去几天,还可以这样写,如果用负数是往前数, #date -d"10 day ago 2015-04-01" +%Y-%m-%d在指定的日期上加上指定的小时 [dc@dc010.tj.momo.com init_env]$ date -d "20150416 12 3 hour" +"%Y%m%d%H" 2015041615在指定的日期上减去指定的小时 [dc@dc010.tj.momo.com init_env]$ date -d "20150416 12 -1 hour" +"%Y%m%d%H" 2015041611在指定的...

beanshell脚本常用的--值得收藏【代码】【图】

import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; try{ Date date =new Date(); //获取当前时间 SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String nowDate = sf.format(date); Calendar cal = Calendar.getInstance(); cal.setTime(sf.parse(nowDate)); cal.add(Calendar.DAY_OF_YEAR,+0); String orderDate = sf.format(cal.getTime()); cal.add(Calendar.DAY...

从SCCM中创建并运行Powershell脚本卸载软件

最近碰到一个需求:针对所有电脑卸载某个小软件,但这个软件并不是SCCM部署,有的是用户自己安装的,有的是系统部署时就已经封装好的,版本繁多,安装路径也不一样!首先想到的当然是用Powershell来做,先后测试了用Get-apppacke\get-appxpacke, Get-WmiObject -Class win32_product等几种方法都不行,最后用找注册表中的UninstallString的方式解决! 方法如下:1、 先用PowerShell定位到注册表位置,X86 Script:Set-Location HKL...

shell脚本中模拟用户输入,避免交互

CONID=‘liugaowei‘CONKEY=‘xxxxxxx‘cd ./senselink-coreexpect -c "spawn git pull origin; expect \"*Username*\" { send \"${CONID}\n\"; exp_continue } \"*Password*\" { send \"${CONKEY}\n\" }; interact" ---------使用工具expect来实现自动输入用户名和密码这种操作交互的原文:https://www.cnblogs.com/goodfuture/p/15050697.html

shell脚本写出一个简单的猜价格游戏【代码】

[root@localhost ~]# vim game.sh #!/bin/bash a=$(expr ${RANDOM} % 1000) #$RANDOM是一个环境变量,每次都会随机输出一个介于0~32767之间的数。 echo "这个商品的价格是(0-999)元之间,猜猜具体价格?" while true do let count++ read -p " 请输入您猜到的具体价格,并按Enter键确认:" b if [ $b -eq $a ] thenecho "恭喜你,答对了,商品的实际价格是${b}!"echo "您一共猜了${count}次!"exit 0 elif ...

Shell脚本中替换字符串等操作

在做shell批处理程序时候,常常会涉及到字符串相关操作。有非常多命令语句。如:awk,sed都能够做字符串各种操作。 事实上shell内置一系列操作符号。能够达到类似效果,大家知道,使用内部操作符会省略启动外部程序等时间,因此速度会非常的快。 一、推断读取字符串值 表达式 含义 ${var} 变量var的值, 与$var同样 ${var-DEFAULT} 假设var没有被声明, 那么就以$DEFAULT作为其值 * ${var:-DEFAULT} 假设var没有被声明, 或者其值...

Shell脚本--磁盘空间有超过80%时发信息

df -h | awk {gsub("\\%","")}NR>1{print $5}>/var/log/diskused.logfor a in cat /var/log/diskused.logdo if [ "$a" > "80" ] then echo "disk used>80%" rm -rf /var/log/diskused.log else continue fidone

关于 Shell 脚本【代码】【图】

Shell 解释器 Linux 提供的 Shell 解释器:bash 和 sh 的关系:CentOS 默认的解析器:Shell 入门 脚本格式,以 #!/bin/bash 开头,指定解析器第一种执行方法,本质是bash解析器帮你执行脚本,所以脚本本身不需要执行权限。第二种执行方法,本质是脚本需要自己执行,所以需要执行权限多命令处理 在 /home/ 目录下创建一个 text.txt 文件,在文件增加 "I love the world!"Shell 变量 系统变量使用 set 查看当前 Shell 中所有变量 自定...

shell脚本练习1创建目录和文件

输入一个目录,判断是否存在,如果不存在则给出提示,如果存在则提示输入要创建的文件名,判断创建的文件是否存在,如果不存在,则继续创建,否则提示改文件已存在,用函数实现#bin/bashcreatefile(){ cd $1 read -p "请输入文件名" filename if [ -f "$filename" ] then echo "文件已存在" else echo "开始创建文件" touch $filename echo "创建完成" fi} read -p "请输入一个目录" dirif [ -d "$dir" ]then createfile $direlse echo...

创建你的第一个shell脚本

什么是shell脚本?shell脚本是Linux和Unix编程环境的基本组成部分。shell脚本有以下几部分组成:shell关键字:if else for do doone...shell命令:export echo exit pwd return....Linux命令:mkdir ls date....文本处理功能:awk cut send grep函数:通过函数把一些常用功能放一起控制流语句:if....then...else或执行循环重复操作的shell脚本。为什么使用shell脚本?使用简单,节省时间,可以把冗长的重复的一串命令合并成一条简...

Shell脚本的学习笔记二:字符串【代码】

菜鸟教程提供的Shell在线编辑器 Shell 字符串项目 功能单引号 原样输出,变量无效。但可用成对单引号嵌套成对单引号输出变量双引号 定义字符串中附带有变量的命令并且想将其解析后再输出的变量。1. 单引号 #!/bin/bash test='Try to do it.' echo 'I say ${test}' #**[代码1]** #echo ' \' ' #使用转义字符会报错,**[代码2]** echo 'I say '${test}'' #**[代码3]** 单引号字符串的限制:单引号里的任何...

Keepalived+NFS+SHELL脚本实现NFS-HA高可用

本来想做DRBD+HEARTBEAT,但是领导说再加硬盘浪费资源,没有必要,而且在已有硬盘上做风险较大,所以就只能用rsync来实现数据同步了,实验中发现很多的坑,都用脚本和计划任务给填上了,打算把这套直接用在生产环境中,到时候如果还遇到什么问题,再进行修正和补全,下面是项目细节:主机配置:web:192.168.6.10 Centos 6.4nfs1:192.168.6.1 Centos 6.4nfs2:192.168.6.2 Centos 6.4keepalived 1.2.13 VIP:192.168.6.1051.安装NFS和...

shell脚本字符串截取的8种方法

假设有变量 var=http://www.aaa.com/123.htm.1. # 号截取,删除左边字符,保留右边字符。echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.aaa.com/123.htm2. ## 号截取,删除左边字符,保留右边字符。echo ${var##*/}##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符即删除 http://www.aaa.com/结果是 123.htm3. %号截取,删除右...

SHELL脚本监控达梦数据库是否运行?【代码】

#!/bin/bashstatus=`/etc/init.d/DmServiceDMSERVER status | grep running | wc -l`process=`ps -ef | grep dmserver | grep -v grep | wc -l`port=`lsof -i:5236 | grep -i listen | wc -l`if[ $port -ne 0 ] && [ $process -ne 0 ] && [ $status -ne 0 ]thenecho "dmserver is running"elseecho "dmserver is not running"fi