Remove/suppress dashes from "Results to Text" output in SSMS?
Those dashes are separators between the column headers and the results, since the columns in your example have no names, that isn't immediately obvious. You can see that better here:
SET NOCOUNT ON;
SELECT ServerName = @@SERVICENAME;
SELECT VersionInfo = @@version;

To suppress the column headers:

Go to the Tools menu then select Options
Navigate to Query Results &gt;&gt; SQL Server &gt;&gt; Results to Text
Uncheck the box for Include column headers in the result set.

Note that this settings page also includes other settings that affect the results both for &quot;Results to text&quot; and &quot;Results to file&quot;, including maximum data length per column (else SSMS will silently truncate), and whether results should be fixed width (the default) or delimited.