Załóżmy, że mam dokument c:\temp\temp.txt
z zawartościąZachowaj nowe linie kiedy złączenie lub używając heredoc w PowerShell
line 1
line 2
i utworzyć następującą funkcję
PS>function wrapit($text) {
@"
---Start---
$text
---End---
"@
}
następnie uruchomić PS> wrapit((Get-Content c:\temp\temp.txt))
wyjście będzie
---Start---
line 1 line 2
---End---
Jak zachować nowe linie? Dołączanie do interpolacji nie pomaga.
I found this related question, ale tutaj używają tablicy łańcuchów. Używam pojedynczego łańcucha znaków, który zawiera znaki nowej linii (możesz je zobaczyć, jeśli wypiszesz łańcuch bezpośrednio z wewnątrz funkcji bez łączenia i $text | gm
potwierdza, że pracuję z łańcuchem, a nie z tablicą). Mogę zrobić cały tekst parsowania na świecie, żeby go uderzyć, ale wydaje mi się, że będę walił w kwadratowy kołek w okrągłej dziurze. Jaka jest koncepcja, której mi brakuje?
Jeśli mam rację, wydaje się, że jest to głównie kwestia przymusu typu. Co jest w porządku, po prostu jestem zdezorientowany, dlaczego na ziemi "Get-Member" powiedział mi, że typ to "System.String' –
Edytuję swoją odpowiedź, aby odpowiedzieć na Twój komentarz. – JPBlanc
Oooooh, racja, zawsze zapominam, jak robi to rura. Dang. Przez większość czasu, tym razem, zdezorientowało mnie to wiele godzin. –