簡體   English   中英

如何擺脫在此 bash 命令之后創建的新行?

[英]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.

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