フォルダ構成のみを反対側に構築するスクリプト 2015-03-03 (Tue) 00:43

指定したフォルダ以下の、ファイルを除いたフォルダの構成のみをコピーしようと、久しく使っていない JScriptで
勢い込んでゴリゴリ書いたのに、後から聞いたら xcopyコマンドのオプションでそんなのがあるのだそうだ。
(作る前に調べれば良かった…orz)

空のフォルダもコピーしたいので /t に加えて /e オプションも指定して使用する。

JScriptで書いてた関数の部分を xcopyを実行するように換えたらだいぶコンパクトになった。
// カレントで選択したフォルダ以下のフォルダ構成のみを反対側に構築する xcopy版

// 分割されていなければ処理しない
if(!(WScript.Env('Split') % 2)) WScript.Quit();

var shell = new ActiveXObject("WScript.Shell");
var fs = new ActiveXObject("Scripting.FileSystemObject");
var current = WScript.Env('Current');
var other = WScript.Env('Other');
var cSel = WScript.Col(WScript.Env('CurrentSelected'));
for(var i = 0; i < cSel.Count; i++){
var src = cSel.Item(i);
var dst = src.replace(current, other) + '\\';
if((!fs.FolderExists(src) || fs.FolderExists(dst))) continue;
shell.Run('xcopy /t /e "' + src + '" "' + dst + '"', 7, true);
}
関連記事

コメントの投稿

管理者にだけ表示を許可する

注意事項
基本的にこのブログはブログ主の備忘録です。

ブログの内容にはブログ主の主観や時には正確でない情報が含まれていることもあります。書いてある内容がすべての環境にあてはまることを保証するものでもありません。

また、過去の記事は現時点で既に陳腐化していることもあります。

その辺をご理解の上で当ブログ内に書いてあることを試す場合は自己責任でお願いします。

記事内容の誤りの指摘、疑問点の回答などコメント頂けると助かります。
カレンダー
09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
ブログ内検索
カラーコードチェッカ
カラーコードの確認
入力例) #ffffff | blue
カテゴリ
最新記事
最新コメント
最新トラックバック
リンク
ブロとも申請フォーム

この人とブロともになる

メールフォーム

名前:
メール:
件名:
本文: