Проблема сценария Powershell (Get-content против присвоения переменной) - PullRequest
0 голосов
/ 09 июня 2009

Я пытаюсь написать скрипт Twitter Powershell, который будет использовать созданные сообществом интерфейсы PoshTwitter с API Twitter, чтобы попытаться найти список подписчиков, которые могут быть спамерами.

У меня такое ощущение, что моя проблема не в том, какой именно командлет я вызываю (Get-TwitterFollowers), а в том, что разница между назначением переменной:

Если я попробую это:

$rawFol = get-twitterfollowers -page $page -raw 1

$ rawFol отличается от того, что я делаю:

get-twitterfollowers -page $page -raw 1 > .\page$page.txt
$rawFol = gc .\page$page.txt

Командлет Get-TwitterFollowers возвращает XML-файл, преобразованный в строку.

Какие вещи я могу попытаться определить различия между этими двумя заданиями? Они выглядят так, как будто их результат будет одинаковым.

1 Ответ

1 голос
/ 09 июня 2009

Разница, которую вы видите, заключается в том, как powershell обрабатывает новые строки в строках. При вызове get-twitterfollowers CmdLet он возвращает либо одну строку, либо массив строк. По вашему описанию я думаю, что он возвращает строку. Таким образом, переменная $ rawFol будет иметь одно строковое значение. Любые новые строки просто встраиваются в строковое значение.

Вторая команда, которую вы пишете возвращение в файл. Теперь все новые строки в строке представлены в виде строк в файле. Позже, когда вы вызовете gc для этого файла, каждая строка будет возвращена как отдельная строка. Таким образом, переменная $ rawFol теперь будет иметь массив строк.

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