5 日間実行されていたジョブを送信しましたが、バグが発生したため、すべての作業が失われる可能性があります。「システム」呼び出しを行ってデータ ファイルを圧縮し、元の圧縮されていないファイルを削除しました。だから私はこれをCコードに持っています
strcpy(command,"data"); ////I should added a forward slash here "data/"
sprintf(command,"%scompress -c -i %s -o %s",command,name,out_name);
system(command);
remove(name); /////This is the problem
バグは sprintf 行にあり、私がやりたかったことは data/compress でプログラムを呼び出すことでしたが、'/' がないためにシステム コマンドが失敗します。したがって、生成されたデータは圧縮されず、すぐに元のファイルが削除され、何も残されません! 圧縮されていればOKでした。
現在、このような状態で実行中のジョブが 5 つあります。5 日間の作業を無駄にしないように、この動作をどうにか流用する必要があります。現在のディレクトリに「datacompress」という名前の偽のスクリプトを作成して、実行中のプログラムの動作を変更することを考えています。これを行うことはできますか、それともより良いオプションはありますか?