Jak wziąć takie polecenie w programie PowerShell i podzielić je na wiele wierszy?
&"C:\Program Files\IIS\Microsoft Web Deploy\msdeploy.exe" -verb:sync -source:contentPath="c:\workspace\xxx\master\Build\_PublishedWebsites\xxx.Web" -dest:contentPath="c:\websites\xxx\wwwroot\,computerName=192.168.1.1,username=administrator,password=xxx"
powershell
asgerhallas
źródło
źródło
Odpowiedzi:
Końcowy znak wstecz, tj.
Biała przestrzeń ma znaczenie. Wymagany format to Space`Enter.
źródło
Inną metodą czystszego przekazywania argumentów byłoby rozpryskiwanie .
Zdefiniuj swoje parametry i wartości jako tablicę mieszającą taką jak ta:
A następnie wywołaj komendę w ten sposób:
Dokumenty Microsoft: Informacje o rozpryskiwaniu
Magazyn TechNet 2011: Windows PowerShell: Rozpryskiwanie
Wygląda na to, że działa z Powershell 2.0 i nowszymi wersjami
źródło
$params.add('name','Bob Newhart')
ramblingcookiemonster.wordpress.com/2014/12/01/…Ach, a jeśli masz bardzo długi ciąg, który chcesz rozbić, powiedzmy w HTML, możesz to zrobić, umieszczając
@
po każdej stronie zewnętrznej"
- w ten sposób:Otrzymujesz dokładnie to:
A jeśli używasz Notepad ++ , będzie on nawet poprawnie podświetlany jako blok znaków.
Teraz, jeśli chcesz, aby ten ciąg zawierał także podwójne cudzysłowy, po prostu dodaj je w następujący sposób:
Otrzymasz dokładnie to:
Jeśli jednak użyjesz podwójnych cudzysłowów w takim ciągu @, Notepad ++ nie zdaje sobie z tego sprawy i zmieni kolorowanie składni, tak jakby nie były cytowane ani cytowane, w zależności od przypadku.
A co jest lepsze, to: gdziekolwiek wstawisz zmienną $, zostanie ona zinterpretowana! (Jeśli potrzebujesz znaku dolara w tekście, uciekasz od niego znakiem tak: `` $ not-a-variable`.)
OGŁOSZENIE! Jeśli nie umieścisz finału
"@
na samym początku linii , zawiedzie. Zajęło mi godzinę, zanim zrozumiałem, że nie mogę tego wciąć w swoim kodzie!Oto MSDN na ten temat: Używanie „Here-Strings” programu Windows PowerShell
źródło
Możesz użyć operatora wstecz:
To wciąż trochę za długo jak na mój gust, więc użyłbym dobrze nazwanych zmiennych:
źródło
Jeśli masz funkcję:
Jeśli masz polecenie cmdlet :
Jeśli masz aplikację:
Lub
źródło
W PowerShell 5 i PowerShell 5 ISE można również użyć just Shift+ Enterdo edycji wielowierszowej (zamiast standardowych odwrotnych znaków
`
na końcu każdej linii):źródło
Metoda z obliczeniami
Jeśli wybierzesz metodę splat, strzeż się obliczeń wykonanych przy użyciu innych parametrów. W praktyce czasami muszę najpierw ustawić zmienne, a następnie utworzyć tabelę skrótów. Ponadto format nie wymaga pojedynczych cudzysłowów wokół wartości klucza lub średnika (jak wspomniano powyżej).
Uwaga: Tablica plików zawiera informacje, które będą miały wpływ na sposób zapełniania arkusza kalkulacyjnego.
źródło
Innym sposobem na podzielenie ciągu na wiele wierszy jest umieszczenie pustego wyrażenia na środku ciągu i podzielenie go na wiersze:
przykładowy ciąg:
"stackoverflow stackoverflow stackoverflow stackoverflow stackoverflow"
w podziale na linie:
źródło