Я изучаю bash, и я хотел автоматизировать ряд команд, которые я часто использую. В этом случае это macchanger и перезапуск сетевого менеджера.Сценарий Bash зависает до нажатия Enter. Только показывает новый адрес mac, нет окна сообщений
#!/bin/bash
#Automated macchanger script
wlanDOWN=$(ifconfig wlan0 down)
change_mac=$(macchanger -r wlan0)
wlanUP=$(ifconfig wlan0 up)
verify=$(macchanger --show wlan0)
network_connect=$(sudo service network-manager restart)
confirmation=$(dialog --msgbox "Change complete" 10 30)
printf "%s\n" "$wlanDOWN"
printf "%s\n" "$change_mac"
printf "%s\n" "$wlanUP"
printf "%s\n" "$verify"
printf "%s\n" "To return to permanent mac address type 'macchanger --permanent <interface name>' "
printf "%s\n" "$network_connect"
printf "%s\n" "$confirmation"
Когда я выполнить этот сценарий с
./hide_me
он просто висит, пока не нажать Enter второй раз, то он просто показывает новый адрес макинтоша и не показывает мое окно сообщения. Любые указатели? Спасибо, друзья.
'while [kill -0" $ pid "]' неправильно, вы, вероятно, имели в виду 'while kill -0" $ pid "'. Вы должны отправить полный пример, если вам нужна дополнительная помощь. – Adrian
Да, извините. Я думал, что вставил код перед тем, как представить. Это сейчас. : D – IRGeekSauce
Я удалил скобки, и теперь я получаю: строка 32: kill: '': не pid или действительная спецификация задания – IRGeekSauce