Передача строки с пробелами в качестве аргумента функции PowerShell - PullRequest
3 голосов
/ 02 декабря 2011

У меня есть действительно простая функция 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 Ответ

4 голосов
/ 02 декабря 2011

Вы можете использовать $args для этого:

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

CreateNote this is a test
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...