我正在處理腳本,當腳本停止並立即轉到後臺時,我一直遇到問題開始。我很確定這是因爲URL在輸入後沒有被轉義,但我不確定如何去做,所以只要我輸入它就會被轉義。當我輸入URL作爲參數時,如何使bash腳本正常工作
我粘貼了下面的代碼以及當我嘗試運行它時發生了什麼。再一次,我真的需要幫助讓URL在輸入時正確地逃脫。
#!/bin/bash
#
url=$1
if [ "$url" = "" ]; then
echo "D: you did not supply a url!"
exit
fi
echo "Please specify your preferred file format by entering the number corresponding to the format name below"
echo "1:avi 2:mp3 3:aac 4:best(program will pick the the best audio format available (aac, mp3, m4a, wav, vorbis))"
read format
if [ "$format" = "1" ]; then
orders="-qt"
elif [ "$format" = "2" ]; then
orders="-qt --extract-audio --audio-format mp3"
elif [ "$format" = "3" ]; then
orders="-qt --extract-audio --audio-format aac"
elif [ "$format" = "4" ]; then
orders="-qt --extract-audio --audio-format best"
else
echo "You did not enter a valid option (1,2,3 or 4) :("
exit
fi
echo "$orders" (debug stuff)
-------------------------------------------------------------------------------------------
這是當我運行該腳本會發生什麼:
[email protected]:~$ ./meddownload.sh http://www.youtube.com/watch?v=g34B-YOaC7c&ob=av2e
[1] 1001 奧斯汀@紅寶石:〜$請輸入對應的格式名稱數量指定您的首選文件格式下面 1:AVI 2:MP3 3:AAC 4:最好(程序將選擇可用的最佳音頻格式(AAC,MP3,M4A,WAV,Vorbis格式)) -bash:1:命令未找到
[1]+ Stopped ./meddownload.sh http://www.youtube.com/watch?v=g34B-YOaC7c
這裏是當我輸入非URL作爲參數發生了什麼(這表明URL是最有可能的問題的原因):
[email protected]:~$ ./meddownload.sh iuniuniun
Please specify your preferred file format by entering the number corresponding to the format name below
1:avi 2:mp3 3:aac 4:best(program will pick the the best audio format available (aac, mp3, m4a, wav, vorbis))
1
-qt
哇。請格式化您的代碼。有一個按鈕可以在後期編輯頁面上進行操作和操作。 –
我們對此深感抱歉,我試圖獲取代碼格式東西的工作,但不能得到任何結果= /(縮進四個空格的事情) – lacrosse1991