PowerShell(3) : 切割文件

 源自 : GPT

 

ps1文件调用 

splitF.ps1 文件

param (
    $filePath,
	$chunkSize,
    $outputFolderPath,
	$fileName
)

$buffer = New-Object byte[] $chunkSize

$stream = [System.IO.File]::OpenRead($filePath)
try {
    $index = 0
    while ($stream.Position -lt $stream.Length) {
        $file = [System.IO.Path]::Combine($outputFolderPath, "$fileName$index")
        $outputStream = [System.IO.File]::OpenWrite($file)
        try {
            $bytesRead = $stream.Read($buffer, 0, $chunkSize)
            $outputStream.Write($buffer, 0, $bytesRead)
        }
        finally {
            $outputStream.Close()
        }
        $index++
    }
}
finally {
    $stream.Close()
}

 

.\splitF.ps1 F:\test/tc.jar 5MB F:\test\ tc

参数1: 文件全路径名

参数2: 每个文件大小

参数3: 输出文件全路径

参数4: 文件名称

函数调用


function splitF { 
	param (
		[string]$filePath,
		$chunkSize,
		[string]$outputFolderPath,
		[string]$fileName
	)
	
	$buffer = New-Object byte[] $chunkSize
	
	$stream = [System.IO.File]::OpenRead($filePath)
	try {
		$index = 0
		while ($stream.Position -lt $stream.Length) {
			$file = [System.IO.Path]::Combine($outputFolderPath, "$fileName$index")
			$outputStream = [System.IO.File]::OpenWrite($file)
			try {
				$bytesRead = $stream.Read($buffer, 0, $chunkSize)
				$outputStream.Write($buffer, 0, $bytesRead)
			}
			finally {
				$outputStream.Close()
			}
			$index++
		}
	}
	finally {
		$stream.Close()
	}
}
splitF F:\test/tc.jar 5MB F:\test\ tc

 

参数1: 文件全路径名

参数2: 每个文件大小

参数3: 输出文件全路径

参数4: 文件名称

linux合成文件

cat splitfiles/* > mergedfile.txt

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值