Are the switches for the SQLCMD command case sensitive?
Yes, SQLCMD switches are case sensitive. 

 -l login_timeout  
 -L[c] (list servers, optional clean output)  
 -s col_separator  
 -S [protocol:]server[instance_name][,port]


When you connect using 

sqlcmd -s .\&lt;servername&gt;


is connects to the default instance and uses ".\&lt;servername&gt;" as column separator 

While on the second machine there may not be any default instances so you need to enter -S .\ explicitly to connect to a named instance