
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内のファイルを書き換...
-
Apoint2Kってスパイウェアでし...
-
Windowsコマンドでファイル削除...
-
Cドライブにconfig msiというフ...
-
Visual C++ でクラスを削除する
-
デスクトップに同じ名前のファ...
-
javaのインストール方法が分か...
-
【VBA】写真の縦横比を変えずに...
-
Ububtuでファイル共有できない...
-
拡張子.EXTの解凍方法
-
Not kind:Folders
-
常に「すべての列のサイズを自...
-
外字エディタについて
-
■人名漢字について■
-
Win7 ファイル名変更入力がおか...
-
タスクスケジューラで指定フォ...
-
【VB 6.0】参照設定でエラーが...
-
ネットワーク経由の共有ファイ...
-
ワードの作成日時と更新日時
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
System32内のファイルを書き換...
-
Cドライブにconfig msiというフ...
-
google Drive 容量を減らせない...
-
エクセルを立ち上げるとBook2が...
-
Apoint2Kってスパイウェアでし...
-
Desktopという構成設定のアイコ...
-
Googleドライブで削除できない...
-
エクセルのメニューコマンドが...
-
ファイルが削除できません。
-
CentOS7で容量がきつくなったの...
-
ファイルを削除するには
-
「お気に入り」が削除できません。
-
mpgファイルが削除できません。
-
青い文字のフォルダ
-
ffから始まるファイルの削除方法
-
IE5.5を使用中に突然例外OEが発...
-
至急!会社のPCを壊しちゃっ...
-
Virtual PCについて
-
ダウンロードフォルダ
-
デスクトップに同じ名前のファ...
おすすめ情報