Are the switches for the SQLCMD command case sensitive? I have MS SQL Server 2014 Management Studio installed on two computers, both of which run on Windows 10. The switches for SQLCMD command are case-sensitive on one computer, but it is not on the other one. If I type the command with lower case switches (like the below examples), it works on one but doesn't work on the other.

sqlcmd -s .\&lt;_servername_&gt;
sqlcmd -l 


For the second computer, I have to type with upper case as shown below.

sqlcmd -S .\&lt;servername&gt;
sqlcmd -L


What is the issue/setting that decides this?
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