Вывод iwconfig grep как часть скрипта

#!/bin/bash
MAX=20
while true
do
iwconfig wlan0 txpower $(((RANDOM % $MAX) +1))
set -x #this was not originally included
echo iwconfig wlan0 | grep Tx-Power
done

Поэтому я пытаюсь, чтобы небольшой скрипт изменял мощность моего устройства ниже максимальной. Я работал без проблем некоторое время назад и пересмотрел сценарий сейчас. С тех пор я изменил хост и ВМ, на которых он работает, и без set-x он просто зависает. Каждая строка работает отдельно, но она не будет выводить эхо на экран в сценарии.

Когда я добавляю set -x, он работает, но также выводит на экран set -x, done и т. Д.

Любая идея, что вызвало это изменение и как я мог исправить

1 ответ

Решение

Ваш скрипт выполняется в бесконечном цикле. Он также содержит следующую строку:

 echo iwconfig wlan0 | grep Tx-Power

поэтому вы просто выводите строку "iwconfig wlan0", а затем пытаетесь найти "Tx-Power" в этом сценарии.

измените эту строку на:

iwconfig wlan0 | grep Tx-Power

так что, по крайней мере, вы сможете увидеть Tx-Power на выходе.

Другие вопросы по тегам