Вы можете проверить каждый файл, чтобы убедиться, что он имеет нулевую длину, прежде чем пытаться отобразить его содержимое:
for f in 2[0-8]_SumActive.txt;
do
[[ -s "$f" ]] && awk 1 "$f" || echo '[Blank]'
done
Я использовал awk 1 "$f"
вместо cat "$f"
, потому что awk
гарантирует завершение вывода файла новой строкой.
В вашем вопросе, если вы предполагали, что [blank]
не должен быть литералом, а просто пустой строкой, вы можете реализовать это, используя приведенный выше код и удалив '[Blank]'
из конца оператора echo
.
Мне удалось решить эту проблему с помощью systemctl restart bluetooth
после rfkill unblock bluetooth
.
Мой скрипт теперь:
rfkill unblock bluetooth
sleep 5
sudo systemctl restart bluetooth
sleep 15
bluetoothctl connect 34:81:F4:99:77:ED
sleep 5
bluetoothctl connect 34:81:F4:99:77:ED
Не знаю, почему я должен подключаться дважды, но я это делаю.