あるドライブのcccにある、当日日付以外の「フォルダのみ」を同ディレクトリのoldに移動させたい。
一つ前のccc配下へ移動する場合は「for /D %%a in (*) do move %%a ..」で終わります。
文字列の判定であれば「MOVE /Y 20* old」にするとファイルも移動させてしまい、同一ディレクトリに
あるフォルダのみをoldに移動する方法が思いつきません。発想が乏しくすみません。一手ご教授ください。
条件:
OS:window7
言語:できればDOSコマンド、もしくはteraterm。
treeの状態
Z:.
├─aaa
├─bbb
├─ccc
│ ├─old
│ ├─20150301
│ │ ├─0301.log
│ │ └─0301.txt
│ ├─20150302
│ │ ├─0302.log
│ │ └─0302.txt
│ ├─20150303
│ ├─201503_xxx.txt
│ ├─2015_yyy.xls
この内、20150301、20150302、20150303のフォルダのみoldに移動させる。
日付フォルダ配下のtxtや、logも纏めて移動させる。
どうぞよろしくお願いします。
UNIXのコマンドですがどうでしょうか
find . ! -path . -type d ! -name $(date +%Y%m%d) -a ! -name old | xargs -I{} mv {} old
で、どうでしょう?
http://www.k-tanaka.net/cmd/xcopy.php