The For loop syntax is structured as follows
[[email protected] tmp]# cat 1 . sh # !/bin/bash for i in ' Seq 3 " do echo $i done [[email protected] tmp]# sh 1 . sh 1 2 3
Bulk Modify file name
[email protected] tmp]# ll *.txt
-rw-r--r--1 root root 0 may 21:34 1.txt
-rw-r--r--1 root root 0 may 21:34 2.txt
-rw-r--r--1 root root 0 may 21:34 3.txt
-rw-r--r--1 root root 0 may 21:34 4.txt
-rw-r--r--1 root root 0 may 21:34 5.txt
[Email protected] tmp]#
[email protected] tmp]# cat 2.sh
#!/bin/bash
Cd/tmp
For filename in ' ls|grep ' txt$ "'
Do
MV $filename ' echo $filename |cut-d. -f1 '. gif
Done
[[Email protected] tmp]# sh 2.sh
[email protected] tmp]# LL
Total 8
-rw-r--r--1 root root 0 may 21:34 1.gif
-rw-r--r--1 root root 21:33 1.sh
-rw-r--r--1 root root 0 may 21:34 2.gif
-rw-r--r--1 root root 21:39 2.sh
-rw-r--r--1 root root 0 may 21:34 3.gif
-rw-r--r--1 root root 0 may 21:34 4.gif
-rw-r--r--1 root root 0 may 21:34 5.gif
CREATE TABLE t1 (ID int (4), name varchar (10));
INSERT into T1 (id,name) VALUES (1, ' Martin ');
Sub-Library backup MySQL Database
[email protected] ~]# cat 1.sh
#!/bin/bash
Path= "Application/mysql/bin: $PATH"
Dbpath=/server/backup
Mysqlroot=root
Mypass=hello123
Socket=/tmp/mysql.sock
mycmd= "Mysql-u$mysqlroot-p$mypass-s $SOCKET"
mydump= "Mysqldump-u$mysqlroot-p$mypass-s $SOCKET"
[!-D $DBPATH]&& mkdir-p $DBPATH
For dbname in ' $MYCMD-e "show databases;" | Sed ' 1,2d ' |egrep-v "Mysql|schema" ' #获取数据库名
Do
$MYDUMP $dbname |gzip > $DBPATH/${dbname}_$ (Date +%f). sql.gz
Done
[Email protected] ~]#
[[Email protected] ~]# sh 1.sh
[Email protected] ~]# ll/server/backup/
Total 12
-rw-r--r--1 root root 680 Sep 12:16 discusz_2017-09-20.sql.gz
-rw-r--r--1 root root 7693 Sep 12:16 wordpress_2017-09-20.sql.gz
Shell for Loop Practice