入力(SQLクエリ)と出力をログファイルにキャプチャしながら、シェルスクリプトで一連のクエリを実行しようとしています。
ただし、入力クエリは出力とともに表示されません。ログファイルには出力のみがキャプチャされます。その入力で入力クエリをキャプチャする方法はありますか?
設定しましたが、echo on
まだ機能しません。
ベストアンサー1
シェルスクリプトがbashまたはshの場合は、-x
スイッチをshebangに追加してスクリプトを実行できます。通常はシェルスクリプトのデバッグに使用され、実行する前に次の行/コマンドを印刷します。したがって、次のスクリプト例があればファイルに書き込まれます。logfile
#!/bin/bash -x
echo "Hello world!" >> logfile
echo "Second command!" >> logfile
その後、スクリプトを実行すると、./script 2>> logfile
ログファイルが次のように表示されます。
+ echo 'Hello world!'
Hello world!
+ echo "Second command!"
Second command!