Question: I must be doing something differently than what was asked and answered here because the solution does not appear to be working for me: [TeamCity, passing an id generated in one build step to a later build step](https://stackoverflow.com/questions/8219493/teamcity-passing-an-id-generated-in-one-build-step-to-a-later-build-step)

I want use a string generated by one build step in a final build step. So far I have set up an environmental variable called "TEST" that is empty. Both build steps use the Command Line Runner.

Build Step #1:

```
\##teamcity[setParameter name='env.TEST' value='test']

```

Build Step #2:

```
echo $TEST

echo %env.TEST%;

```

Placeholder for now, but if I could access the test string ('test') set in Build Step 1 I would be so happy.

Answer: 
What I found is that with long values, as soon as TeamCity is breaking down the log output into two separate lines **echo will not work anymore** - you have to use `Write-Host` instead.

```
Write-Host "##teamcity[setParameter name='env.TEST' value='test']"

```

This should always work, just a side note - this value will be available only on *subsequent* build steps.
[Here is official ticket](https://teamcity-support.jetbrains.com/hc/en-us/requests/1031952) about addition double quotes and echo (Write-Host - OS dependency).