后天要中期答辩了,今天只刷了一个题,还没写出来,但是想更新博客,所以只有把之前写的东西贴出来了。

一个用于分区的shell脚本

 1 #!/bin/bash                            #指定脚本解释器路径
2 echo "initial a disk……"
3 echo -e "\033[31mWarning!:\033[0m" #提醒用户危险操作
4
5 fdisk -l 2> /dev/null | grep -o "disk /dev/[sh]d[a-z]" #显示所有分区
6
7 read -p "your choice:" partdisk    #读入要操作的分区
8
9 if [ $partdisk == "quit" ];then
10 echo "quit"
11 exit 7                  #错误退出,非0
12 fi
13
14 until fdisk -l 2> /dev/null | grep -o "disk /dev/[sh]d[a-z]" | grep "disk $partdisk$" &> /dev/null;do
15 read -p "wrong option,your choice:"partdisk
16 done
17
18 read -p"are you sure?" choice
19
20 until [ $choice=='y' -o $choice =='n'];do
21 read choice
22 done
23
24 if [$choice = n ];then
25 exit 0
26 else
27 dd if=/dev/zero of=$partdisk bs=512 count =1 #从设备/dev/zero输出0覆盖所在磁盘的第一个扇区,删除所有分区
28 sync
29 ##删除所有分区
30 echo "partion"        ###
31 sleep 3            #
32 echo 'n #32-45行echo的内容,和命令行中操作步骤一样
33 p #
34 1 #
35 #
36 +20M #
37 n #
38 p #
39 3 #
40
41 +128M
42 t
43 3
44 82
45 w'|fdisk $partition &>/dev/null #返回消息送入/dev/null 设备
46 sync
47 partprobe $partdisk #写入硬盘
48 sync
49 sleep 3 #同步内容花费时间较长,休眠3s否则下面格式化命令无法执行
50 mke2fs -j ${partdisk}1 &>/dev/null
51 mke2fs -j ${partdisk}2 &>/dev/null #格式化分区,消息送入/dev/null
52 mkswap ${partdisk}3&>/dev/null #格式化交换分区

【Shell】Linux中分区脚本的更多相关文章

  1. Linux中执行脚本参数获取

    Linux中变量$[#,@,0,1,2,*,$,?]含义 $# 是传给脚本的参数个数 $0 是脚本本身的名字 $1 是传递给该shell脚本的第一个参数 $2 是传递给该shell脚本的第二个参数 $ ...

  2. 【改】linux中分区的概念

    1.目录和分区 区别:Linux的分区是物理上的概念,从物理上将存储空间分开:Linux的目录是逻辑上的概念,Linux的目录树实际上是一个分区之间的数据逻辑结构关系,不是物理结构: 联系:一个分区必 ...

  3. linux中分区、格式化文件系统、挂载

    以前学linux的时候,毕竟自己没搞运维,就只注重了很多命令的运用,没太在意文件系统这块.买了本linux的书,这部分看了点东西,记个笔记哈哈. 有个场景,比如说我们现在的服务器上存储不够用了,那么当 ...

  4. 『学了就忘』Linux软件包管理 — 49、拓展:Linux中通过脚本安装程序

    目录 1.脚本程序简介 2.Webmin安装 (1)简介 (2)安装 (3)使用 1.脚本程序简介 脚本程序包并不多见,所以在软件包分类中并没有把它列为一类.它更加类似于Windows下的程序安装,有 ...

  5. 【zookeeper】linux中编写脚本批量启动zookeeper

    实现功能:一键启动.关闭主从端3个节点上的zookeeper,附加查看启动状态 mkdir bin --新建文件夹 cd bin 跳转到bin文件夹里 touch zookeeperstart.sh ...

  6. 关于linux中执行脚本或程序时指定的路径

    假设/mnt/bin 目录下存在一个名为 hello.sh 的可执行文件. 1. 若当前目录是 /mnt/bin ,可以使用 ./hello.sh 来执行这个可执行文件,但是使用 hello.sh 就 ...

  7. Linux中脚本的使用方法

    Linux中脚本的使用方法 一.前言 关于Linux中的脚本的用法,一直没有时间去好好地总结,正好今天下雨,就好好的整理一下思路吧,其实精通了一门语言,比如C语言,学习其他语言需要的成本是非常少的,同 ...

  8. Linux 磁盘分区、挂载

    一.分区介绍 mbr分区: 1.最多支持四个主分区 2.系统只能安装在主分区上 3.扩展分区要占一个主分区 4.mbr最大只支持2TB,但拥有最好的兼容性 gpt分区: 1.支持无限多个主分区(但操作 ...

  9. Python原来这么好学-1.2节: 在Linux中安装python

    这是一本教同学们彻底学通Python的高质量学习教程,认真地学习每一章节的内容,每天只需学好一节,帮助你成为一名卓越的Python程序员: 本教程面向的是零编程基础的同学,非科班人士,以及有一定编程水 ...

随机推荐

  1. 第10章 使用MySQL数据库

    1.在数据库中插入数据:INSERT语句: 如://插入一整行: insert into customers values (NULL,'-','-','-'), - ; //插入一行中指定的列内容: ...

  2. Openjudge-NOI题库-蛇形填充数组

    题目描述 Description 用数字1,2,3,4,...,n*n这n2个数蛇形填充规模为n*n的方阵. 蛇形填充方法为: 对于每一条左下-右上的斜线,从左上到右下依次编号1,2,...,2n-1 ...

  3. 关于eclipse中代码与SVN服务器关联问题

    今天开始开发新项目,此项目采用maven搭建,分多个工程,用eclipse的SVN插件检出工程之后只有一个工程,只好用桌面端的SVN工具检出,然后再import导入到eclipse中直接变成了多个工程 ...

  4. AndroidAsyncHttp 临时修复 JsonHttpResponseHandler 避免死循环

    由于 AndroidAsyncHttp 1.4.4 的 JsonHttpResponseHandler  存在死循环的 BUG,1.4.5 版本发布不知道要何时,所以只能临时替换该类来修复这个错误. ...

  5. 调皮的R文件,卑鄙的空格

    毕业快一年了,由于公司业务需要,开发岗的我做了一年测试.最近,终于要开始转开发了.于是和小伙伴们合作,做一个备忘录apk.由于之前是做java的,而且差不多一年没碰代码了(这一年主要做测试,虽然有写自 ...

  6. DrawerLayout,ToolBar 和 TabHost 的使用

    ActionBar 定义起来不方便 toolbar: 最重要的特性,显示menu菜单,右上角三个点的菜单按钮,使用灵活 使用:1,布局文件,包裹LinearLayout 放imageView, 或者I ...

  7. linux学习心态建设

    为啥我们要学习Linux 技术的价值不在于这个技术有多么高超,而在于技术本身给我们带来什么价值,所以很多时候我们学习一个技术,不能盲目学,是为了使用这个技术,知道这个技术的使用场景,知道这个技术带来的 ...

  8. C# 语言规范_版本5.0 (第8章 语句)

    1. 语句 C# 提供各种语句.使用过 C 和 C++ 编程的开发人员熟悉其中大多数语句. statement: labeled-statement declaration-statement emb ...

  9. Recursive - leetcode [递归]

    经验tips: Recursion is the best friend of tree-related problems. 一是只要遇到字符串的子序列或配准问题首先考虑动态规划DP,二是只要遇到需要 ...

  10. ABP组件包升级

    对于abp的爱好者来说在使用abp上会面临两个问题,第一个是如何上手,第二是如何升级,然而们今天的主题是如何升级abp的组件包.目前我项目版本是0.8.2 通过官网boilerplate生成的项目前端 ...