По двойным кавычкам. Ключь -F это указывает \" - экранированные кавычки.
echo '<yweather:condition text="Fair 123" code="34" temp="-18" date="Wed, 19 Dec 2012 4:00 pm MSK"/>' | awk -F \" '{print $6}'
-18
echo '<yweather:condition text="Fair 123" code="34" temp="- 18" date="Wed, 19 Dec 2012 4:00 pm MSK"/>' | awk -F \" '{print $6}'
- 18
echo '<yweather:condition text="Fair 123" code="+ 34" temp="- 18" date="Wed, 19 Dec 2012 4:00 pm MSK"/>' | awk -F \" '{print $6}'
- 18
echo '<yweather:condition text="Fair" code="+ 34" temp="- 18" date="Wed, 19 Dec 2012 4:00 pm MSK"/>' | awk -F \" '{print $6}'
- 18
echo '<yweather:condition text="Fair" code="+ 34" temp="-18" date="Wed, 19 Dec 2012 4:00 pm MSK"/>' | awk -F \" '{print $6}'
-18
Все работает. Что не так? Позиция везде одна и та же, пробелы - сколько угодно, они игнорируются.