将带有空格的字符串作为参数传递给PowerShell函数

时间:2011-12-02 16:08:36

标签: powershell

我有一个非常简单的PowerShell功能,我用来为自己做笔记:

New-Alias Note CreateNote    
function CreateNote ( [string]$note )
{
    $message = "`n" + $note
    Add-Content C:\notes.txt $message 
    Write-Host "Saved note."
}

只要我用带引号的字符串调用它就可以了。

PS > Note "This is a note to myself."

我真的希望能够省略引号,类似于Write-Host的工作方式:

PS > Write-Host This is a note to myself.
This is a note to myself.

如果我将参数作为数组处理并在将它们附加到文本文件之前将它们连接起来似乎是可行的。有更好的方法吗?

1 个答案:

答案 0 :(得分:4)

您可以使用$args来完成此任务:

function CreateNote
{
    $message = "`n" + $args
    Add-Content D:\notes.txt $message 
    Write-Host "Saved note."
}

CreateNote this is a test