У меня есть файл, который содержит следующие строки:
/logs/tc0001/tomcat/tomcat7.1/conf/catalina.properties:app.env.server.name = demo.example.com
/logs/tc0001/tomcat/tomcat7.2/conf/catalina.properties:app.env.server.name = quest.example.com
/logs/tc0001/tomcat/tomcat7.5/conf/catalina.properties:app.env.server.name = www.example.com
В приведенном выше выводе я хочу извлечь 3 поля (число 2, 4 и последнее *.example.com
). Я получаю следующий вывод:
cat file | awk -F'/' '{print $3 "\t" $5}'
tc0001 tomcat7.1
tc0001 tomcat7.2
tc0001 tomcat7.5
Как мне также извлечь последнее поле с именем домена после '='
? Как использовать multiple delimiter
для извлечения поля?
awk
он глотал поля, когда они были пустыми, что указывало на нумерацию полей. Я перешел-F " "
на-F "[ ]"
иawk
больше не глотал пустые поля.