[英]How can I get rid of the new line created after this bash command?
我試圖將這個 BASH 命令的結果存儲在一個變量中:
localip = subprocess.check_output(["ifconfig | grep 'inet addr' | cut -d ':' -f2 | grep 'Bcast' | cut -d ' ' -f1"], shell=True)
但是如果我打印本地 ip,它總是有一個新行:
pi@raspberrypi:~/Documents $ python change.py
192.168.1.6
pi@raspberrypi:~/Documents $
這當然不是我需要的,所以我嘗試過這樣的事情:
localip[0].replace("\n", "")
或者干脆
localip.replace("\n", "")
但仍然不好......有誰知道擺脫新創建的線? 謝謝!
您還沒有發布的代碼實際打印localip
但一個可能的原因是,你不打印的返回值str.replace
。 str.replace
不會改變現有的字符串,而是返回一個新的副本。
與此同時,我以這種方式解決了:
localip = subprocess.check_output(["ifconfig | grep 'inet addr' | cut -d ':' -f2 | grep 'Bcast' | cut -d ' ' -f1 | tr -d '\n'"], shell=True)
最后用管道tr -d '\\n'
。
謝謝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.