簡體   English   中英

如何在python / tkinter中的字符串變量中存儲系統返回函數的輸出

[英]How to Store the Output of a system return function in a string variable in python/tkinter

查詢:如何將os.system返回函數的輸出存儲到字符串變量中?

我嘗試了下面的代碼,但它始終顯示“ 0”

  1. 未將user_name聲明為StringVar()
  2. 使用以下代碼查找用戶名。

    user_name = os.system("ypcat passwd | grep $USER | awk -F ':' '{print $5}'")

  3. 我嘗試使用print user_name ,但是它打印為“ 0”。
  4. 而且無論我在哪里使用user_name作為變量來替換為用戶名,其打印為“ 0”。

您能否好好分享您的輸入/評論,以及如何在python中存儲系統調用的輸出?

os.system()返回已執行命令的退出代碼,因此它為0是有意義的。如果要存儲已執行命令的輸出,則可能應該使用Subprocess Modulesubprocess.check_output subprocess.check_output()

如前所述,您是從發出的命令中獲取返回碼的,但是獲取用戶名的方法必須比使用的更簡單。
這樣做的方法有多種,但最簡單的方法之一是:

import os
user_name = os.environ['USERNAME']

暫無
暫無

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

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