簡體   English   中英

如何在用戶更改后繼續執行python腳本

[英]How to continue he execution of python script after user change

我想使用python腳本按順序執行以下命令:

sudo su - postgres   #login as postgres user
psql

我試過用:

import os

cmd = 'sudo su - postgres'
os.system(cmd)

cmd1='psql'
os.system(cmd1)

這個問題是第二個命令只有在我從postgres用戶注銷后才會執行,但是我想把它作為postgres用戶運行。 如何在用戶更改后繼續執行python腳本?

謝謝

您可以使用:

sudo su - postgres --command='cat … | psql …'

但你不應該。 您應該配置數據庫服務器以允許運行python腳本的用戶無需密碼即可訪問您的數據庫。 或者至少在此用戶主目錄中使用.pg_pass文件來提供此數據庫的用戶名和密碼。

如果您使用PGPASSWORD,正如您在評論中指出的那樣,那么系統中的任何其他用戶都可以使用ps auxwww顯示它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM