新規にOSをインストールしたときの環境構築。もともと環境のできているPCからコピーなどして構築するためのコマンドラインなどの覚書
xcopyでファイルをディレクトリごとコピー
1 |
> xcopy \\mypc\Share\Data C:\Dir\Data\ /S /E /H |
コンピュータ名mypcのDataフォルダをC:\Dir\Dataフォルダにコピーする。C:\Dir\Dataのあとに\を付ければターゲットDataはフォルダとみなされる。
/Sはサブディレクトリもコピー、
/Eは空のディレクトリもコピー
/Hは隠しファイルなどもコピー。
/Gを付ければ暗号化が解除されてもコピー。
7zipをサイレントインストール。インストーラーは32ビットの7z920.exeというファイル。これはNSISでつくられていると思うので/Sでサイレントインストールできると思う。
1 |
> \\mypc\setupfiles\7z920.exe /S |
7zコマンドラインでファイルを展開
1 |
> "%ProgramFiles%\7-zip\7z" x \\mypc\progs\prog.7z -oC:\LegacyPrograms\ |
まとめてやることもできる。圧縮ファイルはフォルダ1個だけ含み中身は重複しない場合。
1 |
> "%ProgramFiles%\7-zip\7z" x \\mypc\progs\* -oC:\LegacyPrograms\ |
%ProgramFiles%などの環境変数は32ビットと64ビットで違う値になってしまうが64ビットでもコマンドプロンプトが32ビットで動いていればx86の方を示すようになる。32ビットコマンドを起動するには32ビットアプリから起動するか、C:\Windows\SysWOW64\cmdを起動すればいいと思われる。
regファイルを実行してレジストリ編集。regファイルはregeditでつくれる。
1 |
> start \\mypc\Regis\myreg.reg |
netコマンドでネットワークドライブ割り当て
1 |
> net use N: \\mypc\sharedir |
ショートカットの作成はコマンドラインから直接はできないみたいなので、もともと圧縮してあるのをコピーするかまたは以下のようなwshを用意して行う。
1 2 3 4 5 6 7 8 9 10 11 12 |
if WScript.Arguments.Count <> 2 then WScript.Echo "Missing parameters" end if Set filesys = CreateObject("Scripting.FileSystemObject") curfol = filesys.GetParentFolderName(WScript.Arguments(0)) Set WshShell = CreateObject("WScript.Shell") Set objShortcutLnk = WshShell.CreateShortcut(WScript.Arguments(1)) objShortcutLnk.TargetPath = WScript.Arguments(0) objShortcutLnk.WorkingDirectory = curfol objShortcutLnk.Save |
これをcreateshortcut.vbsなどとして保存して以下のコマンドで作成
1 |
> cscript createshortcut.vbs C:\prog\myprog.exe "%APPDATA%\Microsoft\Internet Explorer\Quick Launch\myprog.lnk" |
ここではクイック起動に追加している。
%APPDATA%などの値はsetコマンドで確認できる。