我将如何制作一个Base64编解码器PowerShell脚本?

4nkexdtk  于 2022-11-10  发布在  Shell
关注(0)|答案(1)|浏览(97)

我想做一个Base64编码器/解码器PowerShell脚本。我在PowerShell脚本编写方面做得并不多,但我认为我能胜任这项任务。我想要做的事情:开关,允许用户指定是解码(-d)、编码(-e)、从文件获取数据(-f),还是通过管道传输到文件(-p)。詹姆斯,任何帮助都是无效的
已尝试寻找CLI程序来执行此操作,但没有成功。
我现在有了该脚本的框架代码:

$Text = 'text'
$Bytes = [System.Text.Encoding]::Unicode.GetBytes($Text)
$EncodedText = [Convert]::ToBase64String($Bytes)
$EncodedText

我现在有译码了,但它不工作:


# Base64 Decode

$DecodedText = [System.Text.Encoding]::Unicode.GetString([System.Convert]::FromBase64String($Text))
$DecodedText
vfh0ocws

vfh0ocws1#

最佳实践是使用专用功能/功能...

function ConvertTo-Base64 {

    [CmdletBinding()]
    param (
        [Parameter()]
        [string]
        $String
    )

    $Bytes = [System.Text.Encoding]::UTF8.GetBytes($String)
    [Convert]::ToBase64String($Bytes)
}

function ConvertFrom-Base64 {

    [CmdletBinding()]
    param (
        [Parameter()]
        [string]
        $Base64
    )

    $Decode = [System.Convert]::FromBase64String($Base64)
    [System.Text.Encoding]::UTF8.GetString($Decode)
}

相关问题