
No.3
- 回答日時:
(1)ファイル削除についてのみ意見を言いますと、
恐らく、(1)が正常終了したかを判別する方法はないと思います。
(私の調査が間違っている可能性もありますので、ご参考としてお聞きください。)
Win32APIを使用したファイル削除の処理を実装した時に調べたのですが
ファイルを排他的にロックして削除することは出来なかったと記憶しています。つまりあるプロセスがそのファイルを確実に削除することはできません。(ほかのプロセスが先行して削除する可能性を排除できない。DeleteFileの結果がNGだからといってファイルが削除されていないとは断言できない。細かい話を希望される場合はもう少し説明します。)
delコマンドも内部ではDeleteFileを使用していると思うので、同様の事がいえるのではないか、と推測します。
ですから(1)については、ファイルを削除したあとで、対象ファイルが存在するかを確認することで、処理結果の確認とするのがよいと思います。
hogejoさん、アドバイスありがとうございました。
より細かく正確な仕組みを作るとなるとより深い知識が必要だな、と強く感じました。
今後の課題としたいと思います。
今回は、logファイルを削除する仕組みですので、ファイルを取り合うこともないので、delのリダイレクトの結果を判定結果に使いたいと思います。
ありがとうございました。
No.2
- 回答日時:
それなりにお詳しいようなので思いついた方針だけ書いておきます。
各コマンドでリダイレクトを使い実行結果をファイルに書き出し。
grep等を使ってエラーの文字列を検索。ヒットすれば正常終了でないと判断。
…こんな感じでどうですか?
OSが分かりませんが、NT系なら標準出力だけでなく、標準エラー出力もリダイレクトできるので、これでOKじゃないでしょうか。
>hogehoge.log とやると標準出力がリダイレクトされ、
2>hogehoge.log とやると標準エラー出力がリダイレクトされるようですよ。
というか、これなら標準出力と標準エラー出力でリダイレクト先が分けられるので、生成されたファイルサイズを見るだけで、エラーか正常終了か分かるような気もします。(←試してみてください)
この回答への補足
piro19820122さん、ありがとうございました。
リダイレクトで標準出力する方法ですね。
試しに標準エラー出力をやってみてうまくいきました。
ですが、ファイルサイズの取得方法(0か0じゃないか)で、また立ち止まってしまいました。
ファイルの中身を見ずにサイズだけ取得し確認する方法はありますでしょうか?
No.1
- 回答日時:
delで削除するのが簡単ですが・・・(copyでコピーする)
連続、定期的処理のためですか?
カレントにパス(PATH) が通っていますか?
参考URL:http://homepage2.nifty.com/sak/w_sak3/doc/syspc/ …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルを立ち上げるとBook2が...
-
System32内のファイルを書き換...
-
Update失敗ファイルの削除方法は?
-
Apoint2Kってスパイウェアでし...
-
Cドライブにconfig msiというフ...
-
VBで作成したフォームのタイト...
-
Desktopという構成設定のアイコ...
-
google Drive 容量を減らせない...
-
Not kind:Folders
-
突然エクセルのデータが何ヶ月...
-
フォルダのプロパティでセキュ...
-
タスクスケジューラで指定フォ...
-
Wordを開こうとすると『環境変...
-
常に「すべての列のサイズを自...
-
SYSTEM.SAVフォルダの役割を教...
-
VB.net 任意の例外を発生させ...
-
条件付き書式が設定できない
-
新規作成でなぜフォルダだけ?
-
拡張子.EXTの解凍方法
-
ネットワーク経由の共有ファイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルを立ち上げるとBook2が...
-
System32内のファイルを書き換...
-
google Drive 容量を減らせない...
-
Apoint2Kってスパイウェアでし...
-
Desktopという構成設定のアイコ...
-
Cドライブにconfig msiというフ...
-
Windows XP Mode のデータを削...
-
ファイルの削除ができません
-
Windowsコマンドでファイル削除...
-
アドオンの管理で削除ができない
-
Googleドライブで削除できない...
-
ダウンロードフォルダ
-
デジカメのファイル削除をパソ...
-
東方地霊殿をプレイしていたの...
-
CentOS7で容量がきつくなったの...
-
古い圧縮ファイルの削除について!
-
Dosコマンドで2階層下をワイル...
-
エクセル等でハイパーリンクの...
-
win7更新プログラムの古い更新...
-
スリープ状態からの復帰に、時...
おすすめ情報