cat /etc/oratab
#test1:/opt/oracle/app/oracle/product/11.2.0.4:N
+ASM2:/grid/oracle/app/oracle/product/11.2.0.4:N # line added by Agent
test2:/opt/oracle/app/oracle/product/11.2.0.4:N # line added by Agent
test3:/opt/oracle/app/oracle/product/11.2.0.4:N # line added by Agent
oracle@node1 [/home/oracle]
cat /etc/oratab | grep -v "agent" | awk -F: '{print $2 }' | awk NF | uniq
awk NFは出力から空行を省略することです。
#で始まる行だけを無視してください。予想出力:
/grid/oracle/app/oracle/product/11.2.0.4
/opt/oracle/app/oracle/product/11.2.0.4
ベストアンサー1
awk -F: '/^[^#]/ { print $2 }' /etc/oratab | uniq
/^[^#]/
最初の文字以外のすべての#
行を一致させる[^
ことは、「次の文字(または終わり)の前に文字がない」を意味します]
。
最初の2つのコロンの間の部分だけが必要なので、-F:' makes
awk split the line at colons, and
print $ 2`は2番目の部分を印刷します。