Python:命令后的新行字符
在我正在编写的一个程序中,我有:Python:命令后的新行字符,python,newline,sudo,Python,Newline,Sudo,在我正在编写的一个程序中,我有: SUDOPATH = subprocess.Popen(['which', 'sudo'], stdout=subprocess.PIPE) SUDO = SUDOPATH.stdout.read() 但如果我尝试这样做: os.makedirs(SUDO + directory) 这给了我一个错误: OSError: [Errno 13] Permission denied: '/usr/bin/sudo\n' 如何删除新行字符,以便在从Python发出
SUDOPATH = subprocess.Popen(['which', 'sudo'], stdout=subprocess.PIPE)
SUDO = SUDOPATH.stdout.read()
但如果我尝试这样做:
os.makedirs(SUDO + directory)
这给了我一个错误:
OSError: [Errno 13] Permission denied: '/usr/bin/sudo\n'
如何删除新行字符,以便在从Python发出shell命令时不会遇到此问题?请尝试:
SUDO[:-1]
#prints '/usr/bin/sudo'
这对我很有用
编辑:
或
os.makedirs(SUDO.strip()+目录)
?我仍然收到相同的错误。好的,然后执行SUDO.strip()
我存储的一个变量,该变量包含一个目录的完整路径
SUDO=SUDO.strip()