coś takiego:
mysql -e "SELECT `theme_name`, `guid` FROM `themes` WHERE `theme_purchased`='1' AND `theme_compiled`='0'" | while read theme_name guid; do
# use $theme_name and $guid variables
echo "theme: $theme_name, guid: $guid"
done
w skrócie:mysql
polecenie wypisuje rekord oddzielony '\n' i pola oddzielone '\t', gdy wyjściem jest potok. read
polecenie czyta linię, dzieli na pola i umieszcza je w zmiennej.
jeśli twoje dane mają spacje w polach, masz problemy z domyślnym read
rozdzielać. jest kilka sposobów na obejście tego; ale jeśli czytasz tylko dwa pola i jedno z nich nie powinno zawierać spacji (jak guid
), możesz umieścić na końcu pole „dangerous” i read
umieści wszystko 'dodatkowe' w ostatniej zmiennej.
tak:
mysql -e "SELECT `guid` `theme_name`, FROM `themes` WHERE `theme_purchased`='1' AND `theme_compiled`='0'" | while read guid theme_name; do
# use $theme_name and $guid variables
echo "theme: $theme_name, guid: $guid"
done