用foreach运行`sox`命令行程序?

时间:2018-01-29 14:50:20

标签: powershell

我有一个zip文件,包含大量目录和文件。某处是ul { -moz-column-count: 2; -moz-column-gap: 20px; -webkit-column-count: 2; -webkit-column-gap: 20px; column-count: 2; column-gap: 20px; } 个文件。

我在PowerShell中有脚本解压缩并找到所有.vox个文件。

比我有命令行程序.vox,它可以将vox文件转换为mp3。但它只适用于cmd。

sox

可以在带有sox -t raw -r 8000 -e a-law inputfile outputfile inputfile变量的PS下运行此命令,所以我可以使用带有很多vox文件的sox吗?也许outputfile

1 个答案:

答案 0 :(得分:0)

这样的事情应该有效

$sourceDirectory = "C:\voxfiles"
$destinationDirectory = "C:\soxfiles"

# Grab the list of files
$voxFiles = Get-ChildItem -Path $sourceDirectory -Filter "*.vox"

# Loop over the files
foreach ($voxFile in $voxFiles) {
    $inputFile = $voxFile.FullName
    $outputFile = Join-Path -Path $destinationDirectory -ChildPath $voxFile.Name

    # Call CMD
    & "Sox -t raw -r 8000 -e a-law $inputFile $outputFile"
}

Running CMD command in Powershell