7

700 行を超えるシェル スクリプトを継承しましたが、スクリプトを実行すると、実行のある時点でエラーが発生することに気付きました。

たとえば、コンソールに表示されるエラーは次のようなものです

cat: /Wreck/wreck_module.rb: No such file or directory 

このリンクset -xのほとんどのヒントを使用しようとしましたが、得られたすべての出力がかなりうるさいことに気付きました。

シェルコマンドがゼロ以外のステータスを返した正確な行番号を取得する方法はありますか?

4

1 に答える 1

4

デバッグするスクリプトの先頭にこれを配置します。

#!/bin/bash
function trace_line(){
  caller
}
trap trace_line debug

そしておそらく、分析を容易にするために出力をファイルにリダイレクトします。

于 2013-07-06T03:36:59.977 に答える