0

まず、私はプログラマーと IT プロフェッショナルに最大限の敬意を払っています。私は初心者です/なりたいです。以下で詳しく説明するタスクに役立つ小さなプログラム/スクリプトの開発に関するヘルプを探しています。私はこれを宿題として提出していません。これは仕事関連ですが、私の仕事をお願いしているわけではありません。私はこれを、自分がしなければならないタスクを実行することで、プログラミングについてさらに学ぶ機会と捉えています。あなたが提供するコードはどれも役に立ちますが、中心的な概念、手順、およびこのタスクに取り組むための最善の方法 (どのツール、言語など) についてのあなたのアドバイスに非常に興味があります。

XP マシン (ローカルおよびリモート) バッチ ファイルの基本的な知識 Visual Basic 2008 Express の少しの経験 C++ の少しの経験 (およびコード ブロック コンパイラを持っている)

これが私がやりたいことです:

毎週月曜日から金曜日の深夜に、セットアップしてアクセスできるオフサイト マシン (#1) が必要です。オフサイトのマシン (C:\remoteBackup) への ftp 接続またはインターネットを介して、オフィス (オンになる) の選択したマシン (#2) から 3. 別の選択したマシン (#3) に「successfulCopy.txt」ファイルを配置します。 ) (\machine3\log)。各「successfulCopy.txt」ファイルは、「successfulCopy.txt」が存在するかどうかを確認し、存在する場合は、新しい名前を「successfulCopy(2).txt」などに変更する必要があります。4.休止状態に戻ります(終了時またはタイマーのいずれか)

これは基本的にリモート バックアップ システムです。あなたの考えは何ですか?あなたが提供するアイデアは、さらに質問がある場合にあなたの答えをグーグルで検索できる方法でそれらに名前を付けると最も役立ちます. あなたが提供できる助けに感謝します。私がこれをしたいのは、これをしたいからであり、他の理由はありません。

4

3 に答える 3

2

これは、rsyncが作成された種類のものです。Cygwin をインストールできます( Rsyncを使用して Cygwin をインストールする方法)。次に、「cron」スケジューラーを起動できます ( Cygwin で cron を起動する方法)。パイのように簡単なはずです。わかりました、興味があれば、上記を実行できますが、初心者向けではないことは認めざるを得ません。

おそらく、バッチ ファイルを使用してすべてのことを実行できます。実際のプログラミング言語を使用する必要はほとんどありません。ディレクトリをパッケージ化するために7zipのようなものを使用します... 7zip はコマンド ラインで使いやすく、「更新」機能を備えているため、増分の「バックアップ」が可能になるため、多くの時間を節約できます。

次に、ファイルを取得したら、コマンド ラインに適した FTP プログラム ( WinSCPなど) を使用して、好きな場所にファイルを送信できます。これらの両方をまとめると、最終的に 2 行のバッチ ファイルになりますが、それでもマシンを起動する必要があります。

于 2009-10-13T22:10:52.963 に答える
1

#1 そうですね... コントロール パネルの [タスク] 部分でジョブを計画すれば問題ありません。

#2 xcopy には /S や /Q などのオプションがいくつかあり、新しいファイルのみを取得するオプションもあります。私はもうWindowsを持っていないので、現在確認できません。xcopy は UNC パスをサポートしていますが、私が正しければ ftp は機能しません。表記法を使用して場所に書き込もうとするかもしれません ftp://user:pass@ftp.host.com:port/folder/file.txt

#3ファイルはを使用して作成できecho "" > successfulCopy.txt、ファイルの既存の機能/機能もWindowsシェルに存在する必要があります。

#4 Hibernate は、shutdown.exe を特別なパラメータで呼び出すことで実現できます。shutdown /?ここでは、cmd ウィンドウに入力してパラメーターのリストを表示できます。

これは、Windows の .bat ファイルで十分に仕事ができることを意味します。VB-Script で書きたいと思うかもしれませんが、これにはもう少し手間がかかりますが、うまくいくはずです。

幸運を。

于 2009-10-13T22:01:20.750 に答える