元のプログラムの代わりに呼び出すことができ、元のプログラムを呼び出す汎用bash(Pythonでもよい)ラッパーを探しています。
- 呼び出しコマンドラインをログに記録します
- stdout と stderr をログに記録しますが、呼び出し元から隠しません
- 透過的であること - 呼び出されたプログラムと同じ stdout を持つ
- 呼び出されたプログラムの終了コードを返す
答えは機能的なスクリプトです。ここに「プロトタイプ」があります
#!/bin/bash
LOGFILE=history.log
ORIGINAL=ls
touch ${LOGFILE}
echo "started" >>"${LOGFILE}"
ls "$@"
echo "ended with $?" >>"${LOGFILE}”