• 締切済み

WSHでファイルを圧縮し削除する方法

以下の条件の運用をWSHで実行できないかと考えています。 (1) D:\logフォルダ(固定フォルダ)内にある複数のファイル全てを ひとつのZIPファイルに圧縮し纏める。 (ZIPファイル名はスクリプトで自動付与され、元ファイル名の日付部分が付く事。) (2)圧縮したファイルをD:\log\Archive(出力先固定)に保存する。 (3)圧縮元のD:\logフォルダのファイルは全て削除する。 (4)処理が完了したら「完了しました」とメッセージ表示する。 <フォルダ構成例> D:\logフォルダ内 2007_12_17_1.log、2007_12_17_2.log、2007_12_17_3.log・・・ D:\log\Archive内 2007_12_16.ZIP、2007_12_15.ZIP・・・ ※この状態でWSHファイルを実行するとD:\logフォルダ内が空になり、D:\log\Archive内に2007_12_17.ZIPが作成される。 なおZIP圧縮後に元ファイルを削除しますが、ファイルサイズが大きくなった場合、圧縮に時間が掛かり、すぐに削除するとエラーになる点の考慮も必要です。 すいませんが、上記一連の処理を、1つのWSHファイルを実行するだけで実現するスクリプトをご教授ください。宜しくお願いします。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

ここのコーナーでの質問は形式的にはどんな質問をしても良いのは判る。しかしプロにでも教えてもらわないと判らないようなことは、やはり、(もしあれば)別の専門のコーナーに質問するか、自分で調べるべきだと思う。本件もそれに近いのではないかな。 本件も質問者の仕事上の必要性をこのコーナーに投げていないか。 普通ならそういうソフトがありませんかという質問になるだろう。 良く「何何したい」と色々並べ立てて、丸投げでコード(スクリプト)を書いてくださいというのが多いが、虫が良すぎる。 もっと自分で費用と労力をかけて、自分で習得すべきです。この質問に答えられるようになるには、スクール(余りないと思うが)や職場などで相当先輩から教えてもらわないと、自分で調べるとしても大変な労力ではないかと思う。それを教えてくださいでは、善意で成り立つと唱える本コーナーではあるが、質問内容の特殊性については質問者の抑制が求められると思うので、行き過ぎと思う。 (たとえば大学院生の課題などを質問に載せるとか開発中のソフト商品の開発行き詰まり点を質問に載せるなど) 普通に大型書店では質問に関する書籍など見たことない。 ということは仕事で経験した人で無いと答えられないのではないか。 ーー 下記のような要素技術が必要とおもうが、そういう分解も質問者はできてないようだ。 (1)フォルダ内のファイルを全て捉えるコード (2)ファイル名を得て、ZIPファイルを作成する (3)複数ZIPファイルを1つにまとめる。 または方法があれば、1つのファイルごとにZIPファイルをCloseしないで次々にZIPファイルを継ぎ足していけるか。 (4)圧縮したファイルの保存先を指定と保存 (5)アスク済みのファイルはフォルダから削除 (6)処理が完了したら「完了しました」とメッセージ表示する。 こんなことは簡単何で自分で勉強すること。 (7)ZIP圧縮後に元ファイルを削除しますが、ファイルサイズが大きくなった場合、圧縮に時間が掛かり、すぐに削除するとエラーになる点の考慮も必要です バッチ作業的に圧縮を全てのファイルについて行い、その後元ファイルを削除すればそういうことは起こらないのでは。かといって、圧縮の処理時間を短くするなんて圧縮法で決まっていてどうしようもないのでは。 (1)(5)(6)は普通の内容でWEB照会でも調べれば判ると思う。 メインのスキルのZIPファイルへの圧縮(方法)はコードそのものを自分で作れるとか、またはオブジェクトとして質問者は持っているのですか。

noname#143828
noname#143828
回答No.2

少しは自分で考えたの? 質問するのに仕様を詳しく書くのはいいけど、 すこしは自分でやってみて、分からないところを質問するべきだ こんな意見を書くNO.1と私は暇人か?

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

> すぐに削除するとエラーになる点の考慮も必要です。 こんな注文もつけるし、仕様の希望だけで自分で多少なりとも 組んでみたということも書いていない。 丸投げ?

関連するQ&A