powershell编程实例-001-生成指定大小的null/zero文件或随机文件
Posted on 2020-09-05 17:18 520_1351 阅读(784) 评论(0) 编辑 收藏 举报NULL文件,也有的称为zero文件,即全是二进制/十六进制的0文件
在powershell 中可以按如下方法生成指定大小的zero文件:
只需要修改大小即可,格式如3MB,或者2GB
$tempFile=".\QQ5201351\zero.bin" $fs=New-Object System.IO.FileStream($tempFile,[System.IO.FileMode]::OpenOrCreate) $fs.Seek(3MB,[System.IO.SeekOrigin]::Begin) $fs.WriteByte(0) $fs.Close()
按上面的方法特别注意,需要加上$fs.WriteByte(0),括号中的范围为0~255,所以生成的文件的实际大小=指定的大小+1个字节
如果不加$fs.WriteByte(0),那么生成的文件最后的大小为0,占用空间也为0
1、生成指定大小的随机文件,可以使用如下方法(初学powershell,所以脚本性能很差、只为实现功能,以后再作优化)
使用说明,只需要修改MB大小的数量即可,如2代表生成2MB大小的二进制数据文件
$tempFile=".\QQ5201351\random.bin" $fs=New-Object System.IO.FileStream($tempFile,[System.IO.FileMode]::OpenOrCreate) $MB_count=1 $count=$MB_count*1024*1024 for ($i=0;$i -lt $count;$i++){ $fs.WriteByte((Get-Random -Maximum 256)) } $fs.Close() # 早期的版本1 $tempFile=".\QQ5201351\random.bin" $fs=New-Object System.IO.FileStream($tempFile,[System.IO.FileMode]::OpenOrCreate) $MB_count=1 $array=1..($MB_count*1024*1024) foreach ($n in $array){ $fs.WriteByte((Get-Random -Maximum 256)) } $fs.Close()
尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/13618861.html
作者:一名卑微的IT民工
出处:https://www.cnblogs.com/5201351
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。
由于博主的水平不高,文章没有高度、深度和广度,只是凑字数,不足和错误之处在所难免,希望大家能够批评指出。
博主是利用读书、参考、引用、复制和粘贴等多种方式打造成自己的文章,请原谅博主成为一个卑微的IT民工!