当用man查询这四个命令的帮助文档时,你会发现我们看到了同一个帮助文档,这说明四个命令是一样的.
注意:可以使用-L来指定标签,标签会在挂载磁盘的时候使用,另外也可以写到配置文件里,关于格式化的这一部分,我建议除非有需求,否则不需要指定块的大小,也就是说,你只需要记住这两个选项:-t和-L即可.
扩展资料
格式化的种类
盘片格式化牵涉两个不同的程序:低级与高级格式化.前者处理盘片表面格式化赋与磁片扇区数的特质;低级格式化完成后,硬件盘片控制器(disk controller)即可看到并使用低级格式化的成果;后者处理"伴随着操作系统所写的特定信息".
低级格式化
低级格式化(Low-Level Formatting)又称低层格式化或物理格式化(Physical Format),对于部分硬盘制造厂商,它也被称为初始化(initialization).最早,伴随着应用CHS编址方法、频率调制(FM)、改进频率调制(MFM)等编码方案的磁盘的出现,低级格式化被用于指代对磁盘进行划分柱面、磁道、扇区的操作.
现今,随着软盘的逐渐退出日常应用,应用新的编址方法和接口的磁盘的出现,这个词已经失去了原本的含义,大多数的硬盘制造商将低级格式化(Low-Level Formatting)定义为创建硬盘扇区(sector)使硬盘具备存储能力的操作.现在,人们对低级格式化存在一定的误解,多数情况下,提及低级格式化,往往是指硬盘的填零操作.
高级格式化
高级格式化包括对主引导记录中分区表相应区域的重写、根据用户选定的文件系统,在分区中划出一片用于存放文件分配表、目录表等用于文件管理的磁盘空间,以便用户使用该分区管理文件.
格式化(format)是指对磁盘或磁盘中的分区(partition)进行初始化的一种操作,这种操作通常会导致现有的磁盘或分区中所有的文件被清除.格式化通常分为低级格式化和高级格式化.如果没有特别指明,对硬盘的格式化通常是指高级格式化,而对软盘的格式化则通常同时包括这两者.
Linux下添加新硬盘及分区格式化要点:在为主机添加硬盘前,首先要了解linux系统下对硬盘和分区的命名方法.
在Linux下对IDE的设备是以hd命名的,第一个ide设备是hda,第二个是hdb.依此类推.一般主板上有两个IDE接口,一共可以安装四个IDE设备.主IDE上的两个设备分别对应hda和hdb,第二个IDE口上的两个设备对应hdc和hdd.
一般硬盘安装在主IDE的主接口上,所以是hda;光驱一般安装在第二个IDE的主接口上,所以是hdc(应为hdb是用来命名主IDE上的从接口).
SCSI接口设备是用sd命名的,第一个设备是sda,第二个是sdb.依此类推.分区是用设备名称加数字命名的.例如hda1代表hda这个硬盘设备上的第一个分区.
参考资料:百度百科:格式化
Linux格式化命令一般是mkfs,该命令使用方法如下:
使用权限 : 超级使用者
使用方式 : mkfs [-V] [-t fstype] [fs-options] filesys [blocks] [-L Lable]
说明 : 建立 linux 档案系统在特定的 partition 上
参数 :
device : 预备检查的硬盘 partition,例如:/dev/sda1
-V : 详细显示模式
-c : 在制做档案系统前,检查该partition 是否有坏轨
-l bad_blocks_file : 将有坏轨的block资料加到 bad_blocks_file 里面
block : 给定 block 的大小
-L:建立lable
补充说明:
例子 :
在终端上面输入命令:sudo fdisk -l 回车.然后找到/dev/sda /dev/sdb这样子的英文.这里电脑上面的硬盘,其中sda则是第一个硬盘,sdb是第二个硬盘.
格式化硬盘分区:
在终端输入命令:图片里面的命令回车.
上面的命令回车后,会看到图一的百分比,等到百分百就可以.最后成功后会显示completed successfully,证明成功格式化.
回车没有报错则为挂载成功,其中sdb1就是你所需挂载的分区.
输入命令:df -h ?可以看到分区的容量大小等信息.命令使用介绍请查看"Linux命令大全"
如果一个名称用%括起来,那么就是用的它的赋值,而不是本身的字母
比如
echo time echo %time%
----------------------------------------------------------------------
FOR这条命令基本上都被用来处理文本,我们这次除了要说他处理文本的作用外还要讲他的其他一些好用的功能!
看看他的基本格式(这里我引用的是批处理中的格式,直接在命令行只需要一个%号)
FOR 参数 %%变量名 IN (相关文件或命令) DO 执行的命令
%%变量名 :这个变量名可以是小写a-z或者大写A-Z,他们区分大小写哦~
FOR会把每个读取到的值给他!
IN:命令的格式,照写就是了!
(相关文件或命令) :FOR要把什么东西读取然后赋值给变量,不懂的话看下面的例子
do:命令的格式,照写就是了!
执行的命令:对每个变量的值要执行什么操作就写在这.
看不懂我的这些说明,可以在CMD输入for /?看系统提供的帮助!我这里也给出来吧,大家对照
FOR %%variable IN (set) DO command [command-parameters]
%%variable 指定一个单一字母可替换的参数.
(set) 指定一个或一组文件.可以使用通配符.
command 指定对每个文件执行的命令.
command-parameters
为特定命令指定参数或命令行开关.
现在开始讲每个参数的意思
/d
仅为目录
如果 Set (也就是我上面写的 "相关文件或命令") 包含通配符(* 和 ?),将对与 Set 相匹配的每个目录(而不是指定目录中的文件组)执行指定的 Command.
这个参数其实我也没弄太懂...有错误希望各位纠正!
系统帮助的格式:FOR /D %%variable IN (set) DO command
他主要用于目录搜索,不会搜索文件,看这样的例子
@echo off
for /d %%i in (*) do @echo %%i
pause
把他保存放在C盘根目录执行,就会把C盘目录下的全部目录名字打印出来,而文件名字一个也不显示!
for /d %%i in (?) do @echo %%i
这里解释下*号和?号的作用,*号表示任意N个字符,而?号只表示任意一个字符
知道作用了,给大家个思考题目!
for /d %%i in (window?) do @echo %%i
保存到C盘下执行,会显示什么呢?自己看吧!
/D参数只能显示当前目录下的目录名字,这个大家要注意!
/R
递归
进入根目录树 [Drive:]Path,在树的每个目录中执行 for 语句.如果在 /R 后没有指定目录,则认为是当前目录.如果 Set 只是一个句点 (.),则只枚举目录树.
系统帮助的格式:FOR /R [[drive:]path] %%variable IN (set) DO command
上面我们知道,/D只能显示当前路径下的目录名字,那么现在这个/R也是和目录有关,他能干嘛呢?放心他比/D强大多了!
他可以把当前或者你指定路径下的文件名字全部读取,注意是文件名字,有什么用看例子!
for /r c:\ %%i in (*.exe) do @echo %%i
咋们把这个BAT保存到D盘随便哪里然后执行,我会就会看到,他把C盘根目录,和每个目录的子目录下面全部的EXE文件都列出来了!!!!
再来一个
for /r %%i in (*.exe) do @echo %%i
参数不一样了吧!这个命令前面没加那个C:\也就是搜索路径,这样他就会以当前目录为搜索路径,比如你这个BAT你把他防灾d:\test目录下执行,那么他就会把D:\test目录和他下面的子目录的全部EXE文件列出来!!!
这个参数大家因该理解了吧!还是满好玩的命令!
/L
迭代数值范围
系统帮助的格式:for /L %% Variable in (Start#,Step#,End#) do Command
看着这说明有点晕吧!咋们看例子就不晕了!
大会晕,就打印个数字有P用...好的满足大家,看这个例子
看完这个被我赋予破坏性质的参数后,我们来看最后一个参数
/f
\迭代及文件解析
使用文件解析来处理命令输出、字符串及文件内容.使用迭代变量定义要检查的内容或字符串,并使用各种 ParsingKeywords 选项进一步修改解析方式.使用 ParsingKeywords 令牌选项指定哪些令牌应该作为迭代变量传递.请注意:在没有使用令牌选项时,/F 将只检查第一个令牌.
文件解析过程包括读取输出、字符串或文件内容,将其分成独立的文本行以及再将每行解析成零个或更多个令牌.然后通过设置为令牌的迭代变量值,调用 for 循环.默认情况下,/F 传递每个文件每一行的第一个空白分隔符号.跳过空行.
系统帮助的格式:
for /F "ParsingKeywords" %% Variable in (FileNameSet) do Command
有没有发现这个参数说明比上面几个都多...没办法,人们用FOR命令主要也就是用/f参数,FOR的主场啊!大家得好好看!
先来解释下那个多出来的"ParsingKeywords"
eol=c - 指一个行注释字符的结尾(就一个)
skip=n - 指在文件开始时忽略的行数.
delims=xxx - 指分隔符集.这个替换了空格和跳格键的
默认分隔符集.
tokens=x,y,m-n - 指每行的哪一个符号被传递到每个迭代
的 for 本身.这会导致额外变量名称的分配.m-n
格式为一个范围.通过 nth 符号指定 mth.如果
符号字符串中的最后一个字符星号,
那么额外的变量将在最后一个符号解析之后
分配并接受行的保留文本.
usebackq - 指定新语法已在下类情况中使用:
在作为命令执行一个后引号的字符串并且一个单
引号字符为文字字符串命令并允许在 filenameset
中使用双引号扩起文件名称.
先别晕了!我这就举个例子让粉丝们变的更强来理解这些参数!
usebackq这个参数不用理解了,系统默认会给我们加上!
为了能使用这个例子,我们先新建一个文本文件,在里面打上这些内容保存为test.txt:
;郁闷啊!
您好! 欢迎来到, 非常批处理
我们的网站 bbs.verybat.org
完毕!
FOR /F "eol=; tokens=1 delims= " %%i in (test.txt) do @echo %%i
我们把这个BAT保存到和你的test.txt相同的目录下面然后执行
我们会看到屏幕上会显示
您好!
我们的网站
为什么会这样?我来解释
这个命令会读取在当前目录下名为test.txt文件中的内容,将每一行的内容赋值给变量%%i,忽略掉以;号开头的行,并且以空格做为分隔符号,打印每行以空格做分隔符号的第一列
结果就是这样了!!
如果改成
当然我们想要把全部文件内容直接打印出来就可以这样
FOR /F "delims=" %%i in (test.txt) do @echo %%i
另外/F参数还可以以输出命令的结果看这个例子
FOR /F "delims=" %%i in ('net user') do @echo %%i
这样你本机全部帐号名字就出来了把扩号内的内容用两个单引号引起来就表示那个当命令执行,FOR会返回命令的每行结果,加那个"delims=" 是为了让我空格的行能整行显示出来,不加就只显示空格左边一列!
基本上讲完了FOR的基本用法了...如果你看过FOR的系统帮助,你会发现他下面还有一些特定义的变量,这些我先不讲.大家因该都累了吧!你不累我累啊....
以上就是土嘎嘎小编为大家整理的linux格式化命令相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!