パソコンを起動したら特定のメモ帳を開く。うっかり予防。

月曜にしないといけない事を忘れていることないですか?

あるタイミングでメールとか何かをするって、忘れやすい。朝一でパソコンを起動するとメモ帳が開くってどうですか?

会社のパソコンでもプログラム可能なbat/バッチファイルで作った。

実行の様子です。30秒。

ディスクトップにalertフォルダを作り。この中に1204.txtとか入れておくと、12/4にログインした時に1204.txtをメモ帳で開きます。1月1日は、0101.txtとします。常に月2文字、日付2文字です。

テキストファイルの中に提出物をどこにしまったか。来週金曜提出とか月末期限の仕事、注意点などを書いておきます。

さて、まず。このテキストファイルを作る時に拡張子が見えた方がいい。

拡張子の表示をするようにします。エクスプローラーの表示タブで下図。

ログイン時に実行するbatファイル。名前はmemo.batとでもしておきます。

%homeDrive%
cd %userProfile%
rem 置換 %文字列:m=n%   mをnに置換
set ff=%date:/=%
rem 文字列の取り出し  %文字列:~m,n%   m文字目から文字数n個取り出す
set ff=%ff:~4,30%
set ff=desktop\alert\%ff%.txt
@echo %ff%
if exist %ff% start %ff%

エクスプローラーを起動して、ファイルを指定するテキストボックスにshell:startupと入れて実行します。

するとスタートアップのフォルダが開きます。ここに、ログイン時に実行したいアプリのショートカットやbatファイル(memo.bat)を置く。

作業手順です。3分

以下は、batファイルの説明です。

%homeDrive%はドライブの移動です。大抵はC:ですのでC:を実行するだけでCドライブに操作を変更できる。

%%を囲んで変数(環境変数)で、homeDriveはHomeDriveでも大文字小文字区別はしないようです。ただ、読みやすいように単語の区切りで大文字を使ってるみたい。

Cドライブに移動を確認するために先にd:ドライブに移動してから%homeDrive%を実行します。

cd %userProfile%は、ホームディレクトリ/フォルダに移動します。Windowsの場合は通常、C:\Usersの中にユーザー名でフォルダがあります。ログインユーザー名がusrならcd C:\Users\usrを実行します。

set ff=%date:/=%は、まずdateコマンドを実行してみて下さい。

コマンドだと日付を変更できるので(実際はネットで管理しているのでまた代わります。)入力を求めらるし、「現在の日付・・・」と日本語も入りますが、%date:/=%は、%2024/01/17:/=%となって/は空白文字に置換されて20240117になる。

んん。

bat 文字列 取り出し」で検索してみて下さい。もっといい説明があるかもしれません。

set ff=%ff:~4,30%

環境変数ffの文字列の4文字より後の文字列、30文字まで取り出すい。正確には4文字ですが、オーバーしても問題なく取り出せます。

で、ff環境変数に月2桁と日付2桁が入っていれば、

C:\Users\usrの中にDesktopがありますので、

C:\Users\usr>start Desktop\alert\0118.txt

を実行すればデスクトップ上にalertフォルダがあり、その中に0118.txtがあればメモ帳が起動します。startコマンドは拡張子判断でアプリが起動します。ここではtxtなのでメモ帳を開きます。

ファイルが存在する場合だけstartコマンドを実行する場合はif existを使う。

if exist c:\Users\usr\Desktop\alert\%ff%.txt start 実行したいファイル名

batファイルの例では、何度もDeskt…..と書くのが面倒なのでff変数に入れてます。@echoは確認のために表示します。一瞬なので、確認したい場合は@echoの行の後にpauseを入れて下さい。

set ff=desktop\alert\%ff%.txt
@echo %ff%
pause
if exist %ff% start %ff%

%ff%.txtはdesktop\alert\0118.txtだとした場合、Users\usrフォルダの位置から見てDesktop\alertフォルダ内の0118.txtとなります。

(Visited 21 times, 1 visits today)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です