něco jako:
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
ve zkratce:mysql
příkaz vypíše záznam oddělený '\n' a pole oddělená '\t', když je výstup roura. read
příkaz přečte řádek, rozdělí na pole a každé vloží do proměnné.
pokud vaše data mají v polích mezery, máte problémy s výchozím read
štěpení. existuje několik způsobů, jak to obejít; ale pokud čtete pouze dvě pole a jedno z nich by nemělo mít žádné mezery (jako guid
), pak můžete pole 'dangerous' umístit na konec a read
vloží vše 'extra' do poslední proměnné.
takhle:
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