とまと あんらいぷ…

エンジニアの活動記録とかつぶやきとか

GitHub
スポンサードリンク

「フォルダ(ディレクトリ)構造のみコピーする」を送るメニューで便利に実装-xcopy

xcopyを使ってフォルダ構造のみを複製


特定のフォルダ構造を、
中のファイルを除いてコピーしたい時、xcopyコマンドを使えば簡単に実装できます。

コマンドは以下の通り

xcopy コピー元フォルダパス コピー先フォルダパス /t /e

オプションに[/T]と[/E]を指定します。

/T の説明
ファイルはコピーせずにディレクトリ構造のみを作成します。空の
ディレクトリまたはサブディレクトリは除きます。"/T /E" と指定
すると空のディレクトリやサブディレクトリも作成されます。

/E の説明
ディレクトリまたはサブディレクトリが空であってもコピーします。
"/S /E" と同じ意味です。/T の内容を変更する際にも使用できます。

右クリックの「送る」に入れて便利に


毎回コマンドを叩くのが面倒なので
フォルダを右クリック→「送る」
でいつでもフォルダコピーできるようにしたいので
とりあえず、引数に渡されたフォルダ構造のみをデスクトップに保存するバッチを作ります。

コードはこちら


バッチファイルには引数を送ることができ、
ファイルやフォルダをドラッグ&ドロップすると

バッチファイルの中では「%1」が、第一引数となり
ファイルやフォルダが送られてきた時には「%1」にそのパスが格納されています。

SET target=%USERPROFILE%\Desktop\DuplicateFolder

は、デスクトップに「DuplicateFolder」というフォルダを作るための前準備
「%USERPROFILE%」は環境変数といって、
ログインしているユーザーの専用パスが格納されています。

mkdir %target%
でデスクトップにDuplicateFolderフォルダを作成してます。
mkdirは便利な子で、指定したフルパスの途中にあるフォルダが存在しなければついでに作成してくれます。

例:mkdir c:\aaa\bbb\ccc
aaaフォルダが存在しなければ、aaa、bbb、ccc共に全部作ります。働き者ですね。

さて本題のxcopyです。

xcopy %1 %target% /t /e

などと書いてますが、
このファイルに、C:\TESTAをドラッグ&ドロップした場合

%ふにゃふにゃを展開すると

xcopy C:\TESTA C:\Users\tomato\Desktop\DuplicateFolder /t /e

となります。

さて、これを
右クリックの「送る」メニューに入れます。

予定ではこんな感じ。

20140416_xcopy.png

「送るメニューに」ファイルを配置する手順は以下のとおり。

1.Windowsボタン + R ボタンを押してファイル名を指定して実行ウィンドウを開く
2.shell:sendto と打ち込んでエンターキーを押す。

フォルダが開きます。
このフォルダが、送るメニューに入ってるファイル一覧です。

これで、フォルダを右クリックして送るだけで、デスクトップにフォルダ構造だけを複製した
フォルダ一覧が作成できます。
▼この記事を読んだ方は、こんな記事も読んでいます。▼

スポンサードリンク

テーマ:プログラミング - ジャンル:コンピュータ

コメント

コメントの投稿


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

トラックバック

トラックバック URL
http://dalmore.blog7.fc2.com/tb.php/104-0d0fd801
この記事にトラックバックする(FC2ブログユーザー)

FC2Ad