83

When I do enter this in powershell Console

$test=@'
Test
Test'@

And do enter several times, it keeps printing

>>

So I can never finish command.

What to do ?

3 Answers 3

125

@' should be first thing in the line or it is considered to be just a part of the string.

$test=@'
Test
Test
'@

This approach also works with @"/"@

Sign up to request clarification or add additional context in comments.

5 Comments

the '@ must start the line, in your code it is at the end of the line
And the "@ (or '@) needs to be at the very start of the final line, with nothing after it
@CJBS with nothing after it Can you provide reference for this claim?
@PetSerAl I recorded my thoughts incorrectly. I meant nothing before the '@ or "@ on the final line. It's possible to have a command or comment after the "here string" terminator.
These are called here strings.
33
$test=@'
Test
Test
'@

The important thing to note is that the delimiters include (invisible) carriage returns. There must be one at the end of the starting tag, and one before the closing tag.

1 Comment

You can use @" and "@ if you want string interpolation.
22

As per the section on maximum line length in The PowerShell Best Practices and Style Guide, I would suggest “splatting” the string, like this:

$myStr = ("The family of Dashwood had long been settled in Sussex. Their estate was " +
              "large, and their residence was at Norland Park, in the centre of their " +
              "property, where, for many generations, they had lived in so respectable " +
              "a manner as to engage the general good opinion of their surrounding " +
              "acquaintance.")

1 Comment

This is not an answer to the question. You are concatenating multiple strings to produce a string that does not contain any new line characters. What if you're trying to find and replace a multi-line string in another file?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.