返回顶部
首页 > 资讯 > 后端开发 > Python >shell之for循环的3个简单脚本
  • 745
分享到

shell之for循环的3个简单脚本

脚本简单shell 2023-01-31 06:01:54 745人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

(1)打印乘法口诀表#!/bin/sh for i in {1..9} #取1-9的数字 do  for n in {1..9} #取1-9的数字  do  [ $i -ge $n ] && echo -n "${i}x${

(1)打印乘法口诀表

#!/bin/sh
for i in {1..9} #取1-9的数字
do
 for n in {1..9} #取1-9的数字
 do
 [ $i -ge $n ] && echo -n "${i}x${n}=$((i*n)) "  #如果$i大于等于$n,则输出。
 done
echo " "
done

效果:

[root@shell day3]# sh for9X9.sh
1x1=1 
2x1=2 2x2=4 
3x1=3 3x2=6 3x3=9 
4x1=4 4x2=8 4x3=12 4x4=16 
5x1=5 5x2=10 5x3=15 5x4=20 5x5=25 
6x1=6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36 
7x1=7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49 
8x1=8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64 
9x1=9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81

 

(2)批量添加用户及随机密码

 #!/bin/sh
for i in `seq -w 10`
do
user=oldboy-$i   #定义用户
pass=`echo $RANDOM|md5sum |cut -c 1-8 ` #定义密码,取8位数。这里的密码即为随机的字母和数字的组合。可搜索$RANDOM环境变量及md5sum命令详解。
echo "user:$user   passWord:$pass" >>/tmp/user.txt  #将账号和密码输入到一个文件内,以便查询。
useradd $user && echo "$pass" |passwd --stdin $user  #无交互的添加密码。
done

效果:

[root@shell day3]# cat /tmp/user.txt
user:oldboy-01   password:d4198542
user:oldboy-02   password:6e025742
user:oldboy-03   password:1a94ac35
user:oldboy-04   password:594bb055
user:oldboy-05   password:fcecc05c
user:oldboy-06   password:3957ee7a
user:oldboy-07   password:1454a6e7

.............................................................

 

(3)Mysql分库分表备份

分库备份:

#!/bin/sh
MYUSER=root  #mysql的用户
MYPASS=123456  #mysql root用户的密码
MYCMD="mysql -u$MYUSER -p$MYPASS"   #定义了mysql命令
MYDUMP="mysqldump -u$MYUSER -p$MYPASS"   #定义了mysqldump命令
DATABASE=`$MYCMD -e "show databases;"|sed '1d'|egrep -v "mysql|perfORMance_schema|information_schema"`  #获取到数据库名
for database in $DATABASE
do
$MYDUMP -B $database|gzip >/server/backup/${database}_$(date +%F).sql.gz   #for循环分库备份
done

 

分表备份:

#!/bin/sh
MYUSER=root
MYPASS=123456
MYCMD="mysql -u$MYUSER -p$MYPASS"
MYDUMP="mysqldump -u$MYUSER -p$MYPASS"
DATABASE=`$MYCMD -e "show databases"|sed '1d'|egrep -v "mysql|performance_schema|information_schema"`
for database in $DATABASE
do
[ ! -d /server/backup/$database ] && mkdir -p /server/backup/$database   #创建以数据库名命名的目录
TABLE=`$MYCMD -e "show tables from $database;"|sed '1d'` #获取表名
  for table in $TABLE
  do
  $MYDUMP $database $table |gzip >/server/backup/$database/${database}_${table}_$(date +%F).sql.gz  #for循环分表备份
  done
done

 

分表备份效果:

[root@shell backup]# ll
总用量 64
drwxr-xr-x. 2 root root 24576 6月   6 16:00 bbs
drwxr-xr-x. 2 root root  4096 6月   6 16:00 blog
drwxr-xr-x. 2 root root  4096 6月   6 16:00 lee_default
drwxr-xr-x. 2 root root  4096 6月   6 16:00 lee_gbk
drwxr-xr-x. 2 root root  4096 6月   6 16:00 lee_utf8
drwxr-xr-x. 2 root root  4096 6月   6 16:00 liyiliang
drwxr-xr-x. 2 root root  4096 6月   6 16:00 test
drwxr-xr-x. 2 root root  4096 6月   6 16:00 test1
drwxr-xr-x. 2 root root 12288 6月   6 16:00 www

[root@shell backup]# tree   #部分数据

................................................

x   tqq bbs_pre_ucenter_pm_messages_8_2014-06-06.sql.gz
x   tqq bbs_pre_ucenter_pm_messages_9_2014-06-06.sql.gz
x   tqq bbs_pre_ucenter_protectedmembers_2014-06-06.sql.gz
x   tqq bbs_pre_ucenter_settings_2014-06-06.sql.gz
x   tqq bbs_pre_ucenter_sqlcache_2014-06-06.sql.gz
x   tqq bbs_pre_ucenter_tags_2014-06-06.sql.gz
x   MQq bbs_pre_ucenter_vars_2014-06-06.sql.gz
tqq blog
x   tqq blog_wp_commentmeta_2014-06-06.sql.gz
x   tqq blog_wp_comments_2014-06-06.sql.gz
x   tqq blog_wp_links_2014-06-06.sql.gz
x   tqq blog_wp_options_2014-06-06.sql.gz
x   tqq blog_wp_postmeta_2014-06-06.sql.gz
x   tqq blog_wp_posts_2014-06-06.sql.gz
x   tqq blog_wp_term_relationships_2014-06-06.sql.gz
x   tqq blog_wp_terms_2014-06-06.sql.gz
x   tqq blog_wp_term_taxonomy_2014-06-06.sql.gz
x   tqq blog_wp_usermeta_2014-06-06.sql.gz
x   mqq blog_wp_users_2014-06-06.sql.gz
tqq lee_default
tqq lee_gbk
tqq lee_utf8
x   tqq lee_utf8_leesir_2014-06-06.sql.gz
x   mqq lee_utf8_test_2014-06-06.sql.gz
tqq liyiliang

.................................................

--结束END--

本文标题: shell之for循环的3个简单脚本

本文链接: https://lsjlt.com/news/189582.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • shell之for循环的3个简单脚本
    (1)打印乘法口诀表#!/bin/sh for i in {1..9} #取1-9的数字 do  for n in {1..9} #取1-9的数字  do  [ $i -ge $n ] && echo -n "${i}x${...
    99+
    2023-01-31
    脚本 简单 shell
  • Shell脚本for循环语句简明教程
    与其他编程语言类似,Shell支持for循环。 for循环一般格式为: for 变量名 in 列表 do command1 command2 ... comma...
    99+
    2022-06-04
    简明 语句 脚本
  • shell for循环、循环变量值付给其他shell脚本的方法
    本文主要将在shell中如何编写for循环,并将循环变量作为下个shell脚本的参数。 shell for 循环: #!第一种写法 类似C、java for ((i=1; i<=100; i ++)) do ...
    99+
    2022-06-04
    shell for循环 变量
  • Shell脚本应用 – for、while循环语句
    通过Shell脚本应用(二)学习到了if条件条件语句的使用方法等。Shell作为一种脚本编程语言,同样了包含了循环,分支等其他程序控制结构,从而能够轻松完成更加复杂、强大的功能。我们今天就来认识for、while、case语句的具体应用。一...
    99+
    2023-06-05
  • shell脚本编程之循环语句
    在运行脚本时重复执行一系列的命令是很常见的,这时我们就需要使用循环语句来达到这个目的。 一、for命令 格式:for 变量 in 列表;do 循环体 done for命令会遍历列表中的每一个值,...
    99+
    2022-06-04
    语句 脚本 shell
  • for循环如何在shell脚本中使用
    这期内容当中小编将会给大家带来有关for循环如何在shell脚本中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。for 命令:for i in 的各种用法 :for i in “file1” “fil...
    99+
    2023-06-09
  • 如何使用Shell脚本for循环语句
    本篇内容主要讲解“如何使用Shell脚本for循环语句”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用Shell脚本for循环语句”吧!与其他编程语言类似,Shell支持for循环。for...
    99+
    2023-06-09
  • 如何编写一个shell for循环与case结合的脚本
    这篇文章主要讲解了“如何编写一个shell for循环与case结合的脚本”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何编写一个shell for循环与case结合的脚本”吧!核心代码:...
    99+
    2023-06-09
  • shell如何实现for循环、循环变量值付给其他shell脚本
    小编给大家分享一下shell如何实现for循环、循环变量值付给其他shell脚本,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!本文主要将在shell中如何编写for循环,并将循环变量作为下个shell脚本的参数。shell...
    99+
    2023-06-09
  • Shell脚本之无限循环的两种方法
    for 实现: #!/bin/bash set i=0 set j=0 for((i=0;i<10;)) do let "j=j+1" echo "---...
    99+
    2022-06-04
    两种 脚本 方法
  • Shell脚本while、until循环语句简明教程
    一、while循环 while循环用于不断执行一系列命令,也用于从输入文件中读取数据;命令通常为测试条件。其格式为: while 命令 do command1 command2 ...
    99+
    2022-06-04
    简明 语句 脚本
  • Shell脚本中for循环、while循环及case分支语句怎么用
    本篇内容主要讲解“Shell脚本中for循环、while循环及case分支语句怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Shell脚本中for循环、while循环及case分支语句怎么...
    99+
    2023-06-28
  • 一个shell for循环与case结合的脚本(监控程序状态)
    核心代码: #/bin/bashset -xHOSTS="nginx mysql php-cgi"for myhost in $HOSTS do count=(`ps aux |grep $myhos...
    99+
    2022-06-04
    脚本 状态 程序
  • 有哪些Shell脚本之无限循环的方法
    本篇内容主要讲解“有哪些Shell脚本之无限循环的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“有哪些Shell脚本之无限循环的方法”吧!for 实现:代码如下:#!/bin/bashset...
    99+
    2023-06-09
  • Shell脚本用for循环遍历参数的方法技巧
    1.当一个脚本需要传入的参数较多时,可以使用for循环进行参数遍历 示例: #!/bin/bash number=65 #定义一个退出值 mYdBNWindex=1 #定义一个计数器 i...
    99+
    2022-06-04
    shell脚本for循环遍历参数 shell脚本用for循环遍历参数的方法技巧
  • shell脚本编程之循环语句怎么用
    小编给大家分享一下shell脚本编程之循环语句怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在运行脚本时重复执行一系列的命令是很常见的,这时我们就需要使用循...
    99+
    2023-06-09
  • shell脚本for循环实现文件和目录遍历
    一个for循环实现一个目录下的文件和目录遍历,很实用 [root@localhost shell_order]# cat test27.sh #!/bin/bash #print the directory and...
    99+
    2022-06-04
    shell文件目录遍历 shell目录遍历 shellfor循环遍历
  • 非常简单的Shell菜单脚本
    本文给大家分享一个自己简单编写的Shell菜单脚本,傻瓜式的人机交互,人人都可以操作linux。 #!/bin/sh #Shell菜单演示 function menu () { cat << EOF ...
    99+
    2022-06-04
    Shell 菜单 脚本
  • 3个shell的小脚本的练习
    1;打印9*9乘法表2;输出国际象棋的棋盘3;猴子;摘了n个香蕉每天,吃一半,+1第九天剩一个求摘了几个香蕉 1;打印99乘法表一:for i in {1..9}do for j in seq $idoecho -n “$i$j=$(i*j...
    99+
    2023-01-31
    脚本 shell
  • shell脚本编程之循环语句学习笔记
    本篇博客很简单,看一下shell编程使用到的循环语句,包括for循环,while循环,until循环,for后边跟一个变量,然后是一个集合,将集合中的东西赋给这个变量,每次循环执行,这跟java中的fore...
    99+
    2022-06-04
    语句 脚本 学习笔记
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作