Windows10の現在のユーザ名を取得
以下のコードより、Windows10のUSERNAME環境変数をWSLの環境変数として設定できる。
Windows10の改行コードは"CR+LF"であるが、Linuxの改行コードは"LF"である。
そのため、sedコマンドを使い、改行コードの変換を行う。
"^M"は"Ctrl+v"を押して,"Ctrl+m"を押すことで入力できる。
~/.zshrc
export WIN_USERNAME=$(powershell.exe '$env:USERNAME' | sed -e 's/^M//g')
Windows10のホームディレクトリを取得
上記の環境変数を使い、Windows10の現在のユーザのホームディレクトリを示す
環境変数も追加できる。
~/.zshrc
export WIN_USERHOME=/mnt/c/Users/$WIN_USERNAME
すぐに、Windows10の現在のユーザのホームディレクトリに移動できるので、
便利だと思う(小並感)。
$ cd $WIN_USERHOME
$ pwd
/mnt/c/Users/[Windowsのユーザ名]
おすすめの設定
WSLのほかの環境でもrcファイルを共有している場合は以下のように書くとよい。
~/.zshrc
if [ "$(uname 2> /dev/null)" = Linux ]; then
if [[ "$(uname -r 2> /dev/null)" = *microsoft* ]]; then
export WIN_USERNAME=$(powershell.exe '$env:USERNAME' | sed -e 's/^M//g')
export WIN_USERHOME=/mnt/c/Users/$WIN_USERNAME
export WIN_USERDESK=$WIN_USERHOME/Desktop
fi
fi