2016-12-18 6 views
0

こんにちはフレンド私は、あるフォルダから別の名前に変更されたフォルダにファイルを移動するUNIXスクリプトがあります。ファイルサイズは非常に大きいです。Unixでのエラーの説明を取得する方法

ファイル "mv"の結果コードを取得するために、 "Return code:" $ 0を入れました。これは1または0のいずれかを返します。 非常に大きい特定のファイルに対して1を取得しています。あなたはエラーの説明をどのように入手するのですか? ありがとう ディープク

+0

'$ 0'はスクリプトの名前です。私はあなたが '$? 'を意味すると思います。あなたのスクリプトが質問に実際に使用している正確なコマンドを含めてください。 'mv'が失敗すると' $? 'を '1'に設定し、* stderrにエラーメッセージを出力します。 –

答えて

2

お試しくださいmv -vmvにしていることを冗長にしてください。

+0

私はそれを動かす前に各ファイルの名前を表示していると思います。これは、OPがまだ持っていない情報をもたらすことはまずありません。 –

0

mvが何をしているかについての情報を得るための別の方法は、限り、あなたはこのように、あなたがトレースするコマンドとともに、straceコマンドを使用して、Linuxを使用しているとして、次のとおりです。

strace mv file1 file2 

このmvによって発行されたすべてのシステムコール、そのパラメータとその結果に関する情報を提供します。 OSを扱う際に予期しないエラーを検索するプログラムをトレースする貴重なツールです。

+0

これは、スクリプトに含めるよりもデバッグのヒントです。 – chepner

+0

'mv'がstderrに出力するエラーメッセージを見ると、ずっと簡単です(OPはそれをしていないようです)。 –

関連する問題