WebPenguin のすべての投稿

スクリーンコピーのショートカットキー

操作マニュアル等を作る時に、画面の一部を切り取ってパワーポイントなどへ貼り付ける時は、

SHIFT+Windowキー+Sキーを押す

しばらくすると、上部に切り取り方法の選択画面表示されるので、必要なら、選択する

通常は、十字アイコンが表示されるので、範囲指定するとクリップボードへ記憶される

FastCopyの¥指定

FastCopyで、コピー先指定の末尾に¥を付けた場合は、フォルダを作って、その中にコピーされる

例 e:ドライブには、testフォルダのみがある

“c:\test\tools” /to=”e:\test\” では、testフォルダ配下にtoolsフォルダが作成されて、c:\test\tools内のファイルとフォルダがコピーされる
e:\test\tools

“c:\test\tools” /to=”e:\test” では、test配下にc:\test\tools内のファイルとフォルダがコピーされる
e:\test

例 e:ドライブには、test\toolsフォルダのみがあり、フォルダ同期をする場合は、¥を付けない

“c:\test\tools” /to=”e:\test\tools”

FastCopyの除外フィルタ設定

FastCopyは、なんでもコピーするので、注意が必要

ファイルサーバへThumbs.db、desktop.iniがいつの間にかコピーされていて、フォルダが空なのに削除できない事象が起きることがある

※この場合、タスクマネージャーを起動し、エクスプローラーを再起動して、直ぐに、フォルダ削除すると上手くいくことがある

ジョブ登録やバッチファイルでコマンド実行する時は、Exclude設定をしておくとトラブルが少ない

GUIでは、フィルタをチェックして、Exclude欄へ記載
区切りは、;を記載

Thumbs.db;desktop.ini;

ルートドライブをバックアップしたりするときは、以下も設定

$RECYCLE.BIN\;System Volume Information\;
Thumbs.db;desktop.ini;

バッチファイルの記載例

“C:\Program Files\fastcopy\fastcopy.exe” /cmd=diff /acl=FALSE /force_close /error_stop=FALSE /skip_empty_dir=FALSE /Exclude=”$RECYCLE.BIN\;System Volume Information\;Thumbs.db;desktop.ini;” /log /logfile= “C:\Program Files\fastcopy\backup.log” “コピー元パス” /to=”コピー先パス”

バッチファイルでタスクスケジューラ登録

schtasks /Create /SC DAILY /TN TIMEinfo09 /TR \””C:\test folder\test.bat\”” /ST 09:00 /F

空白を含む実行パスは、\”” で囲む
※schtasks のみ schtasks /Create /? のHELPで確認

※複数実行するときは、間に待ち時間を入れないと、一部処理が遅れて登録されないことがあった
timeout /t 1 /nobreak >nul

バッチファイルでファイルの存在チェック

例は、フォルダの存在を確認(ファイル名を記述するとファイル確認)

setlocal

set FNameCHK1=%current_dir%\tools

if not exist “%FNameCHK1%” goto

rem 処理を記述

rem 正常終了
exit

rem エラー終了
:non_exit
cls
echo 必要なファイルが見つからないので、実行できません
echo .
pause

ユーザのスタートアップフォルダ

setlocal

SET STPATH=C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

copy c:\tools\test.lnk “%STPATH%”

rem 空白を含む可能性があるパスは””で囲む

rem VBAなどでは、””で囲むと中身はすべて文字列として認識されるのが普通だが、BATファイルでは、%で囲まれた部分は値が代入される
※BATファイルは特殊な例で、普通は文字連結で組み立てる必要がある
※文字連結も演算子不要で、SET 変数=並べて記述するだけで連結される

rem 文字列にしたい時は、%%を重ねて記述する %%STPATH%%”

バッチファイルで実行フォルダを取得

バッチファイルを実行したフォルダを取得して、ローカル変数で絶対パス指定する例

setlocal (ローカル変数)
set current_dir=%~dp0(カレントディレクトリをcurrent_dirへセット)
set FName1=%current_dir%\parts\tools\test.exe (値を参照するには%で囲む)

copy %FName1% c:\temp /Y

※空白を含むパスの可能性がある場合は、““で囲む

copy “%FName1%” c:\temp /Y