Я делаю небольшой проект, используя BASH для «Телефонной книги». Он хранит данные в базе данных mysql и использует временный файл для работы с Select.Заполнение списка zenity с помощью результатов mysql
Я использую визуальный интерфейс zenity, поэтому я хочу отображать данные, хранящиеся в базе данных, с помощью Диалога списка Zenity. Для этого мне нужно использовать значения столбцов отдельно, поэтому мне нужно использовать команду awk для их получения, но у меня возникают проблемы с объединением команд zenity и awk.
Сохранение значений базы данных, разделенных символом \ t во временном файле.
echo "SELECT name,address,telephone,email FROM agenda" | mysql projAgenda -N -u root -p12345 >> tempAgenda.dat
Отображение данных с помощью Zenity --list
awk -F'\t' '{zenity --list --title="Listar registos" --text="" --column="Name" --column="Address" --column="Telephone" --column="E-mail" $1 $2 $3 $4}' tempAgenda.dat
Но я всегда получаю ту же ошибку:
awk: line 1: syntax error at or near =
Может кто-то помочь? Я знаю, что, возможно, я очень сильно стараюсь смешивать эти две команды, но не могу думать об этом по-другому.
EDIT: Вывод запроса (разделенный табуляция):
José Manel Rua António Cão 219886868 [email protected]
Cláudio Pinto Praça Dom Rui da Camara 219886820 [email protected]
Не Zenity команды оболочки? Почему вы пытаетесь запустить его в awk-скрипте? –
Можете ли вы запустить команду zenity и передать ее awk? – rahul
отредактируйте свой вопрос, чтобы включить 1-2 строки вывода из запроса 'mysql'. Удачи. – shellter