首页 > V2EX > V2EX-subprocess 怎么样才能切换到特定用户呢?
2022
01-26

V2EX-subprocess 怎么样才能切换到特定用户呢?

szxczyc:

想要登录到机器上去,切换到用户runjob-admin,在脚本里写了命令sudo su - runjob-admin;,但是完成不能执行。导致接下来的进入文件夹和创建新文件都失败了

import subprocess
def run_command(cmd_list):
    process = subprocess.run(cmd_list, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True,timeout=60)
    if process.returncode != 0:
        return None, process.stderr
    return process.stdout, None

def run(client,ip):
    scipt = """
            sudo su - runjob-admin;
            cd lisi/runjob/;
            touch xxxxxxxxxxxxx.py;
            """

    cmd = [client, ip]
    cmd.extend(scipt.split())
    output, err = run_command(cmd)
    print(output)
    if err is not None:
        return
    try:
        data = eval(output)
    except Exception as e:
        return

    return data
    
date = run("jobtool-ssh", "10.10.1.1")#jobtool-ssh 是一个内部登录工具

from V2EX-最新主题 https://ift.tt/32wrXKd
V2EX-subprocess 怎么样才能切换到特定用户呢? - 第1张  | 牛C网(NiuL.Net)
牛C网:https://j1o.net
牛C网导航:https://niuc.icu
零九导航:https://09.gay

最后编辑:
作者:分享菌
这个作者貌似有点懒,什么都没有留下。

留下一个回复