我必須為初學者 BASH 課程完成這個腳本,但似乎沒有第一行,我的腳本完全執行它的任務,但是當我添加 http / https 驗證(第一行)時,它沒有完成其余部分。你能給我解釋一下為什么嗎?當我洗掉 grep 的 quiet 選項時,我發現它運行良好,但在 wget 之前它不會繼續讀取腳本。
grep -Eiq "^https?://" <<<$1 || echo 'Ce script supporte seulement les URLs commencant par https:// ou http://' && exit 1
NOMBRE=`echo "$1" | grep -o '/' 2> /dev/null | wc -l`
NOMBRE=$((NOMBRE 1))
ITEM=`echo "$1" | cut -d '/' -f$NOMBRE 2> /dev/null`
wget -q $1 && echo "Votre fichier a ete telecharge ici: "$PWD/$ITEM
uj5u.com熱心網友回復:
問題是關于優先級的。您需要將錯誤訊息和出口放在大括號內。如果 grep 失敗,則列印錯誤訊息,如果成功,則退出。
試試這個:
grep -Eiq "^https?://" <<<$1 || { echo 'Ce script supporte seulement les URLs commencant par https:// ou http://' && exit 1 ; }
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/440724.html
