| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | 
							- #!/usr/bin/env python3
 
- #echo "name green_$1 command $2"
 
- #CMD="su user -c 'screen -d -m -S "'"'"$1"'"'" "'"'"$2"'"'"' "
 
- #echo "cmd: $CMD"
 
- #CMD2="sudo ip netns exec "'"'"green_$1"'"'" $CMD"
 
- #echo "cmd: $CMD2"
 
- import os
 
- import sys 
 
- import pwd
 
- #username = os.getlogin( ) 
 
- username = pwd.getpwuid(os.getuid())[0]
 
- print([username])
 
- if username == "root":
 
-     print( "do not execute this programm with root or sudo")
 
-     sys.exit()
 
- from optparse import OptionParser
 
- parser = OptionParser()
 
- parser.add_option("--id",  dest="id",
 
-                   help="set netns id = ip")
 
- parser.add_option("--cmd", dest="cmd",
 
-                   help="cmd to execute in network-namespace")
 
- (options, args) = parser.parse_args()
 
- print("option",options)
 
- #print( dir(parser))
 
- if options.id is None:
 
-     print("please set network-namespace --id=xx")
 
-     sys.exit()
 
- if options.cmd is None:
 
-     print("exec: please set --cmd=xxxx")
 
-     sys.exit()
 
- cmd="sudo /opt/netns/_exec --id=\"{id}\" --user=\"{user}\" --cmd=\"{cmd}\" "  # ok
 
- print(cmd)
 
- cmd2=cmd.format(user=username,id=options.id,cmd=options.cmd)
 
- print(cmd2)
 
- os.system(cmd2)
 
- os.system("reset")
 
- os.system("echo 'reset ok'")
 
 
  |