您的位置:首页 > 其它

记录一个自动创建分区的脚本

2017-11-15 16:18 239 查看
[root@es-node1 ~]# cat auto_add_disk.sh
#!/bin/bash
fdisk /dev/sdb <<EOF
n
p
1
#必须的空格,代表第一次回车
#必须的空格,代表第二次回车(回想分区过程就知道了)
wq
EOF

/sbin/mkfs.ext4 /dev/sdb1 &&  /bin/mkdir -p /data && /bin/mount /dev/sdb1 /data
echo 'LABEL=data_disk /data ext4 defaults 0 2' >> /etc/fstab


主要是记录EOF的用法,可以把命令罗列出来传递执行到EOF前面的中去,可以配合需要交互的环境。逐个执行命令。达到批量操作一些名的的效果。

配合mysql操作,可以实现登录mysql终端,批量执行mysql命令,比如创建用户,数据库授权等操作。适合批量操作情景。

附EOF基本使用方法:

下面就对EOF的用法进行梳理:
EOF是END Of File的缩写,表示自定义终止符.既然自定义,那么EOF就不是固定的,可以随意设置别名,在linux按ctrl-d就代表EOF.
EOF一般会配合cat能够多行文本输出.
其用法如下:
<<EOF        //开始
....
EOF            //结束

还可以自定义,比如自定义:
<<BBB        //开始
....
BBB              //结束


示例示范:

下面通过具体实例来感受下EOF用法的妙处:
1)向文件test.sh里输入内容。
[root@slave-server opt]# cat << EOF >test.sh
> 123123123
> 3452354345
> asdfasdfs
> EOF
[root@slave-server opt]# cat test.sh
123123123
3452354345
asdfasdfs

追加内容
[root@slave-server opt]# cat << EOF >>test.sh
> 7777
> 8888
> EOF
[root@slave-server opt]# cat test.sh
123123123
3452354345
asdfasdfs
7777
8888

覆盖
[root@slave-server opt]# cat << EOF >test.sh
> 55555
> EOF
[root@slave-server opt]# cat test.sh
55555

2)自定义EOF,比如自定义为wang
[root@slave-server opt]# cat << wang > haha.txt
> ggggggg
> 4444444
> 6666666
> wang
[root@slave-server opt]# cat haha.txt
ggggggg
4444444
6666666
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: