一、生成文件大小和实际占空间大小一样的文件

dd if=/dev/zero of=50M.file bs=1M count=50

dd if=/dev/zero of=20G.file bs=1G count=20

bs=1M表示每一次读写1M数据,count=50表示读写 50次,这样就指定了生成文件的大小为50M。bs参数还可以进一步细分为ibs和obs两种,为读操作与写操作分别指定不同的Buffer大小。

二、生成文件大小固定,但实际不占空间命令

dd if=/dev/zero of=1G.img bs=1M seek=1000 count=0

这里用了一个新的命令seek,表示略过1000个Block不写(这里Block按照bs的定义是1M),count=0表示写入0个Block。用ls(查看文件大小)命令看新生成的文件,大小可以看出是1000M。但是再用du(查看文件占用空间)一看,实际占用硬盘大小只有0M。

三、命令详解

dd命令用法:

dd [选项]
if =输入文件(或设备名称)。
of =输出文件(或设备名称)。
ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数。
skip = blocks 跳过读入缓冲区开头的ibs*blocks块。
obs = bytes 一次写入bytes字节,即写入缓冲区的字节数。
bs = bytes 同时设置读/写缓冲区的字节数(等于设置ibs和obs)。
cbs = byte 一次转换bytes字节。
count=blocks 只拷贝输入的blocks块。
conv = ASCII 把EBCDIC码转换为ASCIl码。
conv = ebcdic 把ASCIl码转换为EBCDIC码。
conv = ibm 把ASCIl码转换为alternate EBCDIC码。
conv = block 把变动位转换成固定字符。
conv = ublock 把固定位转换成变动位。
conv = ucase 把字母由小写转换为大写。
conv = lcase 把字母由大写转换为小写。
conv = notrunc 不截短输出文件。
conv = swab 交换每一对输入字节。
conv = noerror 出错时不停止处理。
conv = sync 把每个输入记录的大小都调到ibs的大小(用NUL填充)。

iconv命令用法:

iconv [选项...] [文件...]
输入/输出格式规范:
-f, --from-code=原始文本编码
-t, --to-code=输出文本编码
信息:
-l, --list 列举所有已知的字符集
输出控制:
-c 从输出中忽略无效的字符
-o, --output=FILE 输出文件
-s, --silent 关闭警告
--verbose 打印进度信息
-?, --help 给出该系统求助列表
--usage 给出简要的用法信息
-V, --version 打印程序版本号

linux创建指定大小的文件的更多相关文章

  1. linux生成指定大小的文件(转)

    # dd if=/dev/zero of=50M.file bs=1M count=50在当前目录下生成一个50M的文件 虚拟块设备文件更通用的名称是硬盘镜像文件(Hard Disk Image),但 ...

  2. Windows下创建指定大小的文件

    前言 因为需要测试存储容量,所以需要能生成指定大小的文件. 执行 #语法:fsutil file createnew 路径和文件名 文件大小 fsutil file createnew D:\test ...

  3. 使用CMD 命令创建指定大小的文件

    在做资源更新的时候要做 磁盘空间不足的测试,于是想创建一个文件塞满硬盘,搜索到可以用命令来创建. fsutil file createnew null.zip 524288000

  4. Linux下面自动清理超过指定大小的文件

    Linux下面自动清理超过指定大小的文件 思路:1)查找test目录下的所有的文件2)判断是否大于100M3)大于100M则清空 以byte为单位显示文件大小,然后和100M大小做对比. 100M换算 ...

  5. Linux下删除空文件,删除指定大小的文件

    Linux下批量删除空文件(大小等于0的文件)的方法: find . -name "*" -type f -size 0c | xargs -n 1 rm -f 用这个还可以删除指 ...

  6. 使用Java创建指定大小的空文件夹

    /** 方法一 * 创建固定大小的文件 * @param file * @param length * @throws IOException */ public static void create ...

  7. php使用curl下载指定大小的文件

    php中使用基于libcurl的curl函数,可以对目标url发起http请求并获取返回的响应内容.通常的请求方式类似如下的代码: public function callFunction($url, ...

  8. 转 查看linux文件目录的大小和文件夹包含的文件数

    du -sh 文件夹路径 查看linux文件目录的大小和文件夹包含的文件数 统计总数大小 du -sh xmldb/ du -sm * | sort -n //统计当前目录大小 并安大小 排序 du ...

  9. linux shell 脚本 历史文件清理脚本,按天,按月,清理前N天的历史文件,删除指定大小历史文件,历史文件归档清理

    不知道大家那有没有要清理的这个事情.需要清理目录历史文件.可能后续也会有很多其他地方需要清理历史文件,可能会用到. 我这两天空闲写了个脚本,清理比较方便,有要进行清理的大量历史文件的话可以用. 脚本用 ...

随机推荐

  1. pom.xml settings.xml

    <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Soft ...

  2. 创建动作action类:

    Action类是Struts 2应用程序的关键,我们实现了大部分Action类中的业务逻辑.因此,让我们创建一个Java文件HelloWorldAction.java的Java资源> SRC下一 ...

  3. BestCoder Round #93 ABC

    A: 题目大意: 将数组划分成最少的段,每段的数两两不同. 题解:直接用一个map记录一个数是否出现过,贪心的每次取最多个数就好. B: 题目大意: 给出一个0-9组成的字符串,问能否删掉K个数字,使 ...

  4. 获得String形式日期的后一天

    try { SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd"); Calendar c = Calendar.ge ...

  5. 使用PHP创建一个socket服务端

    与常规web开发不同,使用socket开发可以摆脱http的限制.可自定义协议,使用长连接.PHP代码常驻内存等.学习资料来源于workerman官方视频与文档. 通常创建一个socket服务包括这几 ...

  6. hibernate 标签inverse cascade

    inverse设立不当会导致性能低下,其实是说inverse设立不当,会产生多余重复的SQL语句甚至致使JDBC exception的throw.这是我们在建立实体类关系时必须需要关注的地方.一般来说 ...

  7. iOS-获取的NSDate date时间与实际相差8个小时解决方案

    本文转载至 http://blog.sina.com.cn/s/blog_51a995b70101iptl.html NSDate *date = [NSDate date]; NSTimeZone  ...

  8. python学习【第八篇】python模块

    模块与包 模块的概念 在python中一个.py文件就是一个模块. 使用模块可以提高代码的可维护性. 模块分为三种: python标准库 第三方模块 自定义模块 模块的导入方法 1.import语句 ...

  9. 常见cout格式输出

    cout.setf(ios::fixed);//设置格式 cout.unsetf(ios::fixed);//取消格式 cout.setf(ios::scientific);//科学记数法 cout. ...

  10. jquery,日常 记录知识 点 (选择器的引用类型)

    1.标签引用$("p").$("input")例子 $("p").append( $("input").map(func ...