shell脚本一键分区

#!/bin/bash
#实现硬盘自动分区助手
echo "当前所有分区:"
echo `fdisk -l|grep "Disk /dev/[sh]d"|cut -d: -f1|awk '{print $2 "\t"}'`
read -p "请输入你选择的磁盘分区: " DISK

until fdisk -l|grep "Disk /dev/[sh]d"|cut -d: -f1|awk '{print $2 "\t"}'|grep $DISK ;do
	echo "输入错误"
	exit 7
done
FDISK=`fdisk -l|grep "Disk /dev/sdb"|cut -d: -f2|awk '{print $1}'|cut -d "." -f1`
echo "您选择的分区是:$DISK,分区大小是:$FDISK"
fDISK=$(($FDISK/4))
echo "$fDISK"
read -p "分区会导致磁盘损毁的可能,是否继续分区(y/n):" YORNO
if [ $YORNO == n -o $YORNO == N ];then
	echo "脚本退出,不执行格式化操作"
elif [ $YORNO == Y -o $YORNO == y ];then
	echo "删除分区准备"
	sleep 5
	if dd if=/dev/zero of=$DISK bs=512k count=1 ;then
		echo "删除分区完成"
		sleep 5
		echo "开始分区为4个主分区"
		echo "n
			p
			1
			
			+"$fDISK"G
			n
			p
			2

			+"$fDISK"G
			n
			p
			3
			
			+"$fDISK"G
			n
			p
			
	
			w"|fdisk $DISK
	else
		echo "格式化失败。。。"
		exit 11
	fi
else 
	echo "输入错误,请输入Yy OR Nn"
	exit 10
fi	

原创文章,作者:lyy910203,如若转载,请注明出处:http://www.178linux.com/26065

赞 (1)
lyy910203lyy910203
上一篇 2016-07-26 16:40
下一篇 2016-07-26 16:40

相关推荐

  • 提问的智慧

    译文 译文: 捷克语 丹麦语 爱沙尼 亚语 法语 德语 希伯来语 匈牙利语 意大利语 日语 波 兰语 俄语 西班牙语 瑞典语 土 耳其语. 如果你想复制、镜像、翻译或引用本文,请参阅我的 复制须知. 弃权申明 …

    Linux干货 2015-03-20
  • 正则表达式grep,sed

    HTTP 一个简单的网页文件 service iptables stop echo “<h1>I  LOVE YOU</h1>” > /var/www/html/index.html 文本排序sort sort 1.txt   排序规则先数字后字母,小写字母在前。 sort -t “:&#82…

    Linux干货 2018-03-13
  • C++的std::string的“读时也拷贝”技术!

    C++的std::string的读时也拷贝技术! 嘿嘿,你没有看错,我也没有写错,是读时也拷贝技术。什么?我的错,你之前听说写过时才拷贝,嗯,不错的确有这门技术,英文是Copy On Write,简写就是COW,非常’牛’!那么我们就来看看这个’牛’技术的效果吧。 我们先编写一段程序 #include <string> #include…

    Linux干货 2015-04-03
  • awk用法二

      3、awk的printf命令     格式:printf format, item1 item2…     要点:      (1) 要指定format;      (2) 输出时不会自动换行,如需换行则…

    Linux干货 2015-12-24
  • 常见RAID级别

    什么是RAID?     独立磁盘冗余阵列(RAID,Redundant Arrary of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Arrary of Inexpensive Disks),简称磁盘阵列。基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、…

    Linux干货 2016-05-29
  • 第三周:文本处理工具wc,cut,sort,uniq,tr,tee命令练习和用户及组相关命令练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可; [root@app1 tmp]# who | cut -d" " -f1| uniq root dts centos 2、取出最后登录到当前系统的用户的相关信息; [r…

    Linux干货 2016-09-27