我試圖使用Torrent-Video-Player腳本,但它不適用於包含空格的文件。這是一個鸚鵡螺腳本。帶空格的Bash腳本參數
#!/bin/bash
xterm -e "peerflix "$1" --vlc"
「test.torrent」 - >確定
「測試test.torrent」 - >無法execvp peerflix測試:沒有這樣的文件或目錄中找到
我試圖使用Torrent-Video-Player腳本,但它不適用於包含空格的文件。這是一個鸚鵡螺腳本。帶空格的Bash腳本參數
#!/bin/bash
xterm -e "peerflix "$1" --vlc"
「test.torrent」 - >確定
「測試test.torrent」 - >無法execvp peerflix測試:沒有這樣的文件或目錄中找到
更改線路
xterm -e "peerflix "$1" --vlc"
到
xterm -e "peerflix '$1' --vlc"
或
xterm -e "peerflix \"$1\" --vlc"
第一種形式是等價於:
xterm -e "peerflix " $1 " --vlc"
這不是你期待什麼。
Thx這些解釋!這是現在的作品! – melkir
@melkir很高興聽到它,歡迎您。 –
很遺憾,這是不正確的。 ''-e''接受多個參數(所以它也可以作爲參數傳遞它們)。你的解決方案可能會破壞,如果你有其他特殊字符(如引號) 你想要的是''xterm -e'peerflix'「$ 1」'--vlc'''或者你可以省略單引號''xterm -e peerflix 「$ 1」--vlc''。但是,它不能解決帶有斜槓的文件問題。這應該會更好(如果peerflix支持它,但我不知道)。 '''xterm -e peerflix --vlc - 「$ 1」'' –
爲什麼你有嵌套報價? – anubhava