私のクエリは次のとおりです
QUERY="SELECT 'Your Name:', FullName, 'Your Phone:', Phone, 'Email:', Email FROM Table1 JOIN WHERE EmpID=001;"
私が得た結果は次のとおりです。
Your Name: Samanta Your Phone: 111-111-1111 Email: [email protected]
しかし、印刷するときは、次のような出力が必要です。
Your Name: Samanta
Your Phone: 111-111-1111
Email: [email protected]
私はこれを試しました:
出力 =executeSQLQuery "$QUERY" | tr -c ' ' '\n'
動作しません。
ベストアンサー1
output=executeSQLQuery "$QUERY" |sed 's/: [^ ]* /& \n/g'
上記のコマンドは以下を生成します。
user@user:~> z="Your Name: Samanta Your Phone: 111-111-1111 Email: [email protected]"
user@user:~> echo $z | sed 's/: [^ ]* /& \n/g'
Your Name: Samanta
Your Phone: 111-111-1111
Email: [email protected]
user@user:~>
このコマンドは、コロン(':')、スペース、およびスペース以外のすべての文字で構成される正規表現の一致を使用します。ただし、データに空白文字が含まれていると、コマンドは正しく失敗します。