Umi Uyuraのブログ

プログラミング関連の作業ログ

FastCopyをwingetでインストールするときにインストール先を指定する

FastCopyをwingetでインストールするときにインストール先を指定する

Windows系最速(? ※公式のまま)のファイルコピー&バックアップツール FastCopy ですが、wingetを使って普通にインストールするとホームディレクトリの直下に C:\Users\<user>\FastCopy のようにインストールされます。(インストーラを手動で実行すればインストール場所を指定できます)

個人的にホームディレクトリ直下にプログラムを置きたくなかったので、場所を変更することにしました。

wingetでは --location オプションを与えることでインストール先を指定することができます。

Program Filesにはインストールできず

はじめはアプリケーションのインストール先として一般的な C:\Program Files にインストールしようとしました。

>winget install FastCopy --location "C:\Program Files\FastCopy"

ところがこの場合、実際にインストールされた場所は C:\Program\FastCopy となっていました。

手動でインストーラを実行した場合は問題なかったので、どうやらwinget経由してFastCopyインストーラにパスが渡されるときに、スペースが含まれていると、そこで途切れてしまっているようです。

%LOCALAPPDATA% にインストールする

というわけで、スペースを含まないパスにインストールした方が良さそうなのだけれど、どこにしたものかと考えていたときに、以下の記事を見つけました。

LocalAppData にアプリケーションをインストールするという選択 - meg_nakagamiの日記

少し調べてみたものの、明確に %LOCALAPPDATA% の用途について説明されているドキュメントを見つけられませんでしたが、たしかに最近のアプリケーションを見ていると %LOCALAPPDATA% にインストールされているものも多いようなので、ここにインストールすることにしました。

>winget install FastCopy --location "%LOCALAPPDATA%\FastCopy"

%LOCALAPPDATA%C:\Users\<user>\AppData\Local とスペースを含まないパスに展開できるので、wingetでのインストールも意図通り C:\Users\<user>\AppData\Local\FastCopy にインストールできました。

便利な使い方

インストール先のパスを環境変数 PATH に追加しておくことで、コマンドプロンプトからも利用することができるようになります。

個人的にはコピーよりも削除で利用することが多く、 doskey で以下のようなマクロを用意しています。

fastrm=fastcopy /cmd=delete /auto_close $1

Node.jsのnode_modulesをまっさらにしたいときなど fastrm node_modules と実行することで削除できます。

ついでに

C:\Users\<user>\AppData には Local 以外に RoamingLocalLow というフォルダがありますが、どういう使い分けなのか気になったところ、以下の記事が参考になりました。

猫科研究所 - Roaming, Local, LocalLow