機能の拡張 その3

コマンドプロンプトで使用するツールの登録

SW:0:を用いて動いているところを隠して実行することにより、コマンドプロンプト*1上で使用するコンソールプログラムもX-Finderの機能の一部のように活用できる。
以下では、システム標準のcopy、xcopy、ren、del、attrib等の活用に加え、ファイル管理に便利なプログラムを紹介する。

名前を変更してコピーする

ファイルのコピー用の"copy"の使用例。

ファイル名を変更してコピー
[パス]
Input:"ファイル名変更コピー","ファイル名を変更してコピー","ファイル名","%FocusedName%"
Sw:0:%ComSpec% /c copy "%Focused%" "%InputData%"
Refresh:2
[動作]
実行

フォルダ構造のコピー用の"xcopy"の使用例。

フォルダ名を変更してコピー
[パス]
ClipPath:2
Input:"フォルダ名変更コピー","フォルダ名を変更してコピー","フォルダ名","%clipboard%"
xcopy /e /k /i /o /x "%Focused%" "%InputData%"
Refresh:2
[動作]
実行
ファイルの拡張子を変更する

ファイル名変更用の"ren"の使用例。
ファイルの拡張子を変更するランチャ。システムで拡張子を表示しない設定にしていても有効。(環境変数temp1を追加設定してあることが前提)

拡張子を変更
[パス]
ClipPath:2
Set:temp1=%clipboard%
ClipPath:3
Input:"拡張子の変更","拡張子のみ変更","変更後の拡張子(.以降)を入力","%temp1%"
Sw:0:%ComSpec% /c ren %temp1% %clipboard%.%inputdata%
Refresh:2
[動作]
実行
形式や属性を指定してファイルを削除する

ファイル削除用の"del"の使用例。
指定した拡張子のファイルを現在のフォルダとそのサブフォルダから削除するランチャ。読み取り専用ファイルも強制的に削除する。

形式を指定してサブフォルダからもファイルを削除
[パス]
Input:"ファイル削除","拡張子を指定してサブフォルダからもファイルを削除","削除する拡張子を入力",""
Sw:0:%ComSpec% /c del /s /f /q *.%inputdata%
Refresh:2
[動作]
実行


拡張子と属性を指定してファイルを削除するランチャ。

形式と属性を指定してファイルを削除
[パス]
Input:"ファイル削除","拡張子と属性を指定してファイルを削除","削除する拡張子を入力",""
Set:temp1=%inputdata%
Input:"ファイル削除","削除するファイルの属性を指定","r:読専 s:システム a:アーカイブ h:隠 ("-a"は「読専は削除しない」),""
Sw:0:%ComSpec% /c del /q /a:%inputdata% *.%temp1%
Refresh:2
[動作]
実行
属性を変更する

環境変数の項を参照。

ファイルのリストを作成する

選択アイテムのパスを X-Finderをインストールしたフォルダのpath.txtに書き込むランチャ。

選択アイテムのパスをテキストに書き込み
[パス]
SW:0:%ComSpec% /q /c ( for %I in ( %Selected% ) do echo %I ) >> %X-Finder%path.txt
[動作]
実行
ファイルの概要を変更する

bafgyksnここのPart6-734で入手)を使用すれば、ファイルのプロパティの概要タブに表示される情報を取得or書き換えることが可能。
(ただし、メディアファイルにはbafgyksnから編集しても反映されない項目があるので注意)

選択したアイテムのコメントに「重要」と書き込む
[パス]
Foreach:Sw:0:%ComSpec% /c echo 重要| ..bafgyksn -w -n comments "%Variable%"
[動作]
実行
クリップボードの文字列を選択したアイテムのコメントに書き込む
[パス]
Foreach:Sw:0:%ComSpec% /c echo %clipboard%| ..bafgyksn -w -n comments "%Variable%"
[動作]
実行
外部プログラムの更新を行う

頻繁にアップデートをしているソフトの上書き更新を行うランチャ。exeのみ解凍・上書きしている。
書庫ファイルをソフトごとにフォルダ分けしているのが前提。

下記の例だと書庫が"C:\temp\aaa"、インストールされているのが"C:\bin\aaa"

コマンドライン版の7-zipを使用。

実行ファイルの更新をする
[パス]
0:C:\temp\aaa
Sort:-更新日時
%ComSpec% /c ..7za.exe x %focused% -oC:\bin\aaa *.exe -aoa
Close:
[動作]
実行・新規タブ

*1:コマンドプロンプトについて詳しくはこちらこちらを参照