SHELL用法四(for语句)
For i in (表达式) do 动作1 done
#!/bin/bash do echo “$NUM) www.jd.com” done
#!/bin/bash ..}) do echo “$NUM) www.jd.com” done
#!/bin/bash
COMMAND=.{..}
do
echo -e "\033[32mThe $IP Exec Command:\033[0m"
ssh -l root $IP "$COMMAND"
scp -r jfedu.txt root@$IP:/data/backup/
done
#!/bin/bash
for LOG in `ls access_2019*`
do
echo $LOG
tar -czvf ${LOG}.tar.gz $LOG
if [ ! -d /data/backup/`date +%F` ];then
mkdir -p /data/backup/`date +%F`
fi
mv ${LOG}.tar.gz /data/backup/`date +%F`
rm -rf $LOG
done
#!/bin/bash --/*` doecho $LOG tar -xzf $LOG -C /data/logs/linux_web/ done
;j<=;j++)) do echo -ne "\033[32m-\033[0m" done echo
While (表达式|条件) do 动作1 done
#!/bin/bash #By author jfedu.net while read LINE do echo $LINEdone <jfedu.txt
#!/bin/bash #By author jfedu.net do echo -e "\033[32mHello World.\033[0m" done
#!/bin/bash #By author jfedu.net i= )) do echo $i i=`` done
#By author jfedu.net #auto j= i= )) do j=`expr $i + $j` ((i++)) done echo $j
#!/bin/bash #By author jfedu.net while read line do echo $line; done < /etc/hosts
#!/bin/bash while truedo read -p "Please input A Number:" INPUT ];then echo $INPUT break; fi done
#!/bin/bash #Check File to change. #By author jfedu.net FILES="/etc/passwd" while true do echo "The Time is `date +%F-%T`" OLD=`md5sum $FILES|` NEW=`md5sum $FILES|` if [[ $OLD != $NEW ]];then echo "The $FILES has been modified." fi done
#!/bin/bash while true do USER=$* echo -e "\033[32m`date`\033[0m" for i in $USER do NUM=$(who|grep $i|wc -l) ];then echo "The $i is Login Linux System." fi done echo "--------------------" done
#!/bin/bash
#2019年7月6日15::
#auto backup mysql database.
#by author www.jfedu.net####################
SQL_USR="backup"
SQL_PWD="backup"
SQL_DB="$1"
SQL_DIR="/data/backup/$(date +%F)"
SQL_CMD="/usr/bin/mysqldump"
-o "$1" == "help" ];then
echo -e "\033[32m----------------\033[0m"
echo -e "\033[32mUsage:{/bin/bash $0
jfedu1|www|jfedu2|help}\[0m"
exit
fi
if [ ! -d $SQL_DIR ];then
mkdir -p $SQL_DIR
fi
$SQL_CMD -u$SQL_USR -p$SQL_PWD $SQL_DB >
$SQL_DIR/${SQL_DB}.sql
];then
echo -e "\033[32mThe MYSQL $SQL_DB backup
success.\[0m"
echo "----------------"
echo "ls -l $SQL_DIR/"ls -l $SQL_DIR/
else
rm -rf $SQL_DIR/${SQL_DB}.sql
echo -e "\033[32mThe MYSQL $SQL_DB backup
Failed.\[0m"
exit
fi
#!/bin/bash
#2019年7月6日15::
#auto backup mysql database.
#by author www.jfedu.net
####################
SQL_USR="backup"
SQL_PWD="backup"
SQL_DB="$*"
SQL_DIR="/data/backup/$(date +%F)"
SQL_CMD="/usr/bin/mysqldump"
-o "$1" == "help" ];then
echo -e "\033[32m----------------\033[0m"
echo -e "\033[32mUsage:{/bin/bash $0
jfedu1|www|jfedu2|help}\[0m"exit 1
fi
if [ ! -d $SQL_DIR ];then
mkdir -p $SQL_DIR
fi
for SQL_DB in `echo $SQL_DB`
do
$SQL_CMD -u$SQL_USR -p$SQL_PWD $SQL_DB >
$SQL_DIR/${SQL_DB}.sql
];then
echo -e "\033[32mThe MYSQL $SQL_DB backup
success.\[0m"
echo "----------------"
echo "ls -l $SQL_DIR/"
ls -l $SQL_DIR/
else
rm -rf $SQL_DIR/${SQL_DB}.sql
echo -e "\033[32mThe MYSQL $SQL_DB backup
Failed.\[0m"
exit
fi
done
#!/bin/bash
#2019年7月6日15::
#auto backup mysql database.
#by author www.jfedu.net
#########################
SQL_USR="backup"
SQL_PWD="backup"
SQL_DB="$*"
SQL_DIR="/data/backup/$(date +%F)"
SQL_CMD="/usr/bin/mysqldump"
-o "$1" == "help" ];then
echo -e "\033[32m----------------\033[0m"
echo -e "\033[32mUsage:{/bin/bash $0
jfedu1|www|jfedu2|help}\[0m"
exit
fi
if [ ! -d $SQL_DIR ];then
mkdir -p $SQL_DIR
fi
for SQL_DB in `echo $SQL_DB`do
if [ "$SQL_DB" == "all" ];then
$SQL_CMD -u$SQL_USR -p$SQL_PWD
--all-databases > $SQL_DIR/${SQL_DB}.sql
];then
echo -e "\033[32mThe MYSQL $SQL_DB
backup success.\[0m"
echo "----------------"
echo "ls -l $SQL_DIR/"
ls -l $SQL_DIR/
continue
else
rm -rf $SQL_DIR/${SQL_DB}.sql
echo -e "\033[32mThe MYSQL $SQL_DB
backup Failed.\[0m"
exit
fi
fi
$SQL_CMD -u$SQL_USR -p$SQL_PWD $SQL_DB >
$SQL_DIR/${SQL_DB}.sql
];then
echo -e "\033[32mThe MYSQL $SQL_DB backupsuccess.\033[0m"
echo "----------------"
echo "ls -l $SQL_DIR/"
ls -l $SQL_DIR/
else
rm -rf $SQL_DIR/${SQL_DB}.sql
echo -e "\033[32mThe MYSQL $SQL_DB backup
Failed.\[0m"
exit
fi
done
#!/bin/bash
#2019年7月6日16::
#auto change server ip.
#by author www.jfedu.net
####################
ETH_IPADDR="$1"
GATEWAY="10.10.10.1"
DNS_SERVER="8.8.8.8"ETH_NAME="ifcfg-ens33"
NETMASK="255.255.255.0"
ETH_BAK="/data/backup/`date +%F`"
ETH_DIR="/etc/sysconfig/network-scripts"
];then
echo -e "\033[32m---------------\033[0m"
echo -e "\033[32mUsage:{/bin/bash $0
[0m"
exit
fi
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
cd $ETH_DIR
cp $ETH_NAME $ETH_BAK
grep "dhcp" $ETH_NAME
];then
echo "TYPE=\"Ethernet\"
BOOTPROTO=\"static\"
NAME=\"ens33\"
DEVICE=\"ens33\"
ONBOOT=\"yes\"">$ETH_NAMEecho "IPADDR=$ETH_IPADDR" >>$ETH_NAME
echo "NETMASK=$NETMASK" >>$ETH_NAME
echo "GATEWAY=$GATEWAY" >>$ETH_NAME
echo "DNS1=$DNS_SERVER" >>$ETH_NAME
fi
#!/bin/bash
#2019年7月6日16::
#auto change server ip.
#by author www.jfedu.net
####################
ETH_IPADDR="$1"
GATEWAY="10.10.10.1"
DNS_SERVER="8.8.8.8"
ETH_NAME="ifcfg-ens33"
NETMASK="255.255.255.0"
ETH_BAK="/data/backup/`date +%F`"
ETH_DIR="/etc/sysconfig/network-scripts"
];then
echo -e "\033[32m---------------\033[0m"
echo -e "\033[32mUsage:{/bin/bash $0
[0m"exit 1
fi
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
cd $ETH_DIR
cp $ETH_NAME $ETH_BAK
echo "TYPE=\"Ethernet\"
BOOTPROTO=\"static\"
NAME=\"ens33\"
DEVICE=\"ens33\"
ONBOOT=\"yes\"">$ETH_NAME
echo "IPADDR=$ETH_IPADDR" >>$ETH_NAME
echo "NETMASK=$NETMASK" >>$ETH_NAME
echo "GATEWAY=$GATEWAY" >>$ETH_NAME
echo "DNS1=$DNS_SERVER" >>$ETH_NAME
#!/bin/bash #2019年7月6日16:: #auto change server ip. #by author www.jfedu.net ####################GATEWAY="10.10.10.1" DNS_SERVER="8.8.8.8" ETH_NAME="ifcfg-ens33" NETMASK="255.255.255.0" ETH_BAK="/data/backup/`date +%F`" ETH_DIR="/etc/sysconfig/network-scripts" if [ ! -d $ETH_BAK ];then mkdir -p $ETH_BAK fi while true do read -p "Please Input Server IPaddr: " ETH_IPADDR if [ ! -z $ETH_IPADDR ];then IP1=`` IP2=`` IP3=`` IP4=`` -a $IP1 -le -a $IP2 -ge -a $IP2 -le -a $IP3 -ge -a $IP3 -le -a $IP4 -ge -a $IP1 -le ];then ETH_IPADDR=$ETH_IPADDR break fifi done cd $ETH_DIR cp $ETH_NAME $ETH_BAK echo "TYPE=\"Ethernet\" BOOTPROTO=\"static\" NAME=\"ens33\" DEVICE=\"ens33\" ONBOOT=\"yes\"">$ETH_NAME echo "IPADDR=$ETH_IPADDR" >>$ETH_NAME echo "NETMASK=$NETMASK" >>$ETH_NAME echo "GATEWAY=$GATEWAY" >>$ETH_NAME echo "DNS1=$DNS_SERVER" >>$ETH_NAME ];then echo echo "cat $ETH_DIR/$ETH_NAME" cat $ETH_DIR/$ETH_NAME echo "----------------" echo -e "\033[32mThe Server IPaddr config success.\033[0m" else echo echo -e "\033[32mThe Server IPaddr config Failed.\033[0m"exit fi
SHELL用法四(for语句)的更多相关文章
- SHELL用法七(Sed语句)
1.SHELL编程Sed语句案例实战 1)SHELL编程四剑客之二的Sed工具,主要是用于Linux系统文本文件的编辑. 打印的,也称为非交互模式编辑器(vi|vim交互模式编辑器),Sed工具的语法 ...
- SHELL用法六(Find语句)
1.SHELL编程Find语句案例实战 1)SHELL编程四剑客工具:Find.Grep.Sed.Awk,通过四剑客可以完成常规Linux指令无法完成或者比较复杂的功能,学好SHELL编程四剑客有助于 ...
- SHELL用法五(Case语句)
1.SHELL编程Case语句案例实战 1)Case选择条件语句的格式: case $INPUT in Pattern1) 语句1 ;; Pattern2) 语句2 ;; esac 2)Case语句企 ...
- Shell编程之循环语句与echo的用法
Shell编程之循环语句与echo的用法 目录 Shell编程之循环语句与echo的用法 一.echo用法 1. echo常用选项 2. 常用的转义字符 3. 特殊符号%.#的用法 二.循环语句 1. ...
- Shell编程四剑客包括:find、sed、grep、awk
一.Shell编程四剑客之Find Find工具主要用于操作系统文件.目录的查找,其语法参数格式为: find path -option [ -print ] [ -exec -ok command ...
- shell 脚本之判断语句 if 详解
使用 Linux 系统这么长时间,对 shell 脚本也算是比较熟悉.其实不管是搞开发,还是搞运维,shell 脚本都是必备的基本技能.这次抽时间好好总结一下 shell 方面的知识,综合的再学习一下 ...
- shell脚本-循环选择语句
shell脚本-循环选择语句 过程式编程语言: 顺序执行 选择执行 循环执行 注:条件中的变量,可以在执行语句中使用,不用在加上"$". if语句 根据命令的退出状态来执行命令 单 ...
- shell 编程四剑客简介 find sed grep awk(微信公众号摘抄)
一,Shell编程四剑客之Find 通过如上基础语法的学习,读者对Shell编程有了更近一步的理解,Shell编程不再是简单命令的堆积,而是演变成了各种特殊的语句.各种语法.编程工具.各种命令的集合. ...
- shell脚本之循环语句与函数
shell脚本之循环语句与函数 echo的用法: echo -n #表示不换行输出 echo -e #输出转义字符,将转义后的内容输出到屏幕上 转义字符: \n :换行,被输出的字符从"\n ...
随机推荐
- NOIp2018解题报告
D1: T1 \(Ans = \sum_{i=2}^{n} |a_{i}-a_{i-1}|\),正确性可由贪心证得 T2 考虑贪心,选出一个属于A的集合,容易证明其是最优的 然后考虑一个数如果不被选, ...
- 计算机网络(6): http cookie
Cookie作用: 1)帮助管理用户会话信息(用户需要记录的信息:登陆状态等) 2)跟踪浏览器的行为 3)用户自定义设置 实现方式: 当用户浏览带有Cookie的网站时,网站自动为其生成一个唯一的标志 ...
- share团队冲刺3
团队冲刺第三天 昨天:完成了对输出文字,按钮控件的添加,能够将其在模拟器上运行 今天:学习输入的添加方式 问题:Android resource linking failed 在改变按钮样式的时候,出 ...
- 今天 运营同事发现的bug记录 上传商品时商品名称带双引号 导致输出页面时 双引号被转义
例如 ”sk||““美白”淡化 这样输出表单页面时显示出来的只有sk|| 解决办法 把输出文字对双引号进行转义
- 结点选择(树形DP)
Description 有一棵 n 个节点的树,树上每个节点都有一个正整数权值.如果一个点被选择了,那么在树上和它相邻的点都不能被选择.求选出的点的权值和最大是多少? Input 接下来的一行包含 n ...
- DAO层使用mybatis框架有关实体类的有趣细节
1.根据个人习惯,将储存那些数据库查询结果集有映射关系的实体类的Package包名有如下格式: cn.bjut.domain cn.bjut.pojo cn.bjut.model cn.bjut.en ...
- PAT Advanced 1096 Consecutive Factors (20) [数学问题-因子分解 逻辑题]
题目 Among all the factors of a positive integer N, there may exist several consecutive numbers. For e ...
- 如何把word文档导入到数据库中——java POI
本文方法借鉴于https://www.cnblogs.com/ljysy/p/10574197.html 在经过朋友的指导下,在处理文档的方式上有所不同. 我的数据库使用的是SQL server,这篇 ...
- iOS 加急审核的办法
前言:由于自己的APP在提交后,审核了大概一周左右还没有消息,而领导又不断询问情况,于是自己在网上看到了这篇文章.由于自己比较懒,所以在此记录下来,以供 大家参考. 说明:本文只是做一个记录,还望看到 ...
- CodeForces 992B Nastya Studies Informatics + Hankson的趣味题(gcd、lcm)
http://codeforces.com/problemset/problem/992/B 题意: 给你区间[l,r]和x,y 问你区间中有多少个数对 (a,b) 使得 gcd(a,b)=x lc ...