我想做的:为 Windows Powershell 设计一个命令,让用户输入他们想要校验和的文件的路径以及他们喜欢的校验和算法。然后将结果保存在与该文件同名的文件中,在同一目录中,但以校验和算法作为其扩展名。
示例:将 C:\path\to\file.pdf 写入命令,用户将找到包含 SHA-256 校验和作为文本的 C:\path\to\file.sha256。
到目前为止我所拥有的:
Set-Variable -Name "pfad" -Value "C:\path\to\file.pdf"; Set-Variable -Name "algorithmus" -Value SHA256; certutil -hashfile $pfad $algorithmus > $pfad + "." + $algorithmus
如果这行得通,它将返回 a file.pdf.SHA256
which 会很好。但是,它会使用包含错误消息的同名文件覆盖原始文件。
不幸的是,某种 bash 脚本对我来说是不可行的。它必须是一个命令,用户将能够将其所需的值复制到命令的一个位置。
我已经研究了几个函数,比如 SplitPath 等,但我觉得应该有一种相当简单的方法来做我想做的事情。这是我第一次处理 Windows Powershell,所以我对自己的可能性一无所知。