Not Able To Use Python Command Line

I am trying to receive using Python command line arguments but i have some problems in receiving & along with arguments


import sys
START_D = sys.argv[1]
print START_D

This works fine

python sdsss

But if i use & it is giving some random stuffs

python sds&ss
[1] 8682
Netid  State      Recv-Q Send-Q Local Address:Port                 Peer Address:Port                
u_seq  ESTAB      0      0      @0001b 25095                 * 25096                
u_seq  ESTAB      0      0      @0001a 25086                 * 25087                
u_seq  ESTAB      0      0      @00020 74036                
tcp    ESTAB      0      0      2405:205:830d:2a38:492a:5a32:cffe:eca1:34196                  2404:6800:4009:807::2003:https                
[1]+  Done                    python sds

What was the issuse how can i fix it and i want to use & in parameters so how can i use it along when i send parameters?

This is what happens @Nicole_Wells,

When you run the first command $ python sdsss it does what you expect and that’s fine. But, in the second case you got an ampersand & which in terms of linux script and other languages it is used to run two or more comands and sentences serially, one after the other.

In other words, your shell is interpreting $ python sds as one independent command and when that one finishes then will run ss which happens to be a comand too. Here is more info about the ss command.

Solution: Escape the & caracter with a backslash \& and it should be printed as it is.

Good Luck