Bash:コマンドの結果を変数に保存すると、出力が混乱します。

Bash:コマンドの結果を変数に保存すると、出力が混乱します。

私はWSLからWindowsのユーザー名を取得しようとしています。

#!/bin/bash

WINDOWS_USER=$("whoami.exe")
echo "Windows username: '${WINDOWS_USER}'"

しかし、出力は少し混乱しています。

$ ./createNewUser.sh
'indows username: 'intra\user

私は実際に出力を期待していますWindows username: 'intra\user'。ところで、最後の文章が'文章の先頭に移された。どうすればこのようなことが起こりましたか?

答え1

問題は、このコマンドが\r最後のコマンドにあることです\n。次の方法で削除できます。

WINDOWS_USER=$(whoami.exe | tr -d '\r')

関連情報