我使用以下命令将Windows的用户名分配给WSL Ubuntu Bash中的变量:
WINUSER=`cmd.exe /C 'echo %username%'`
如果我回显该变量,则其行为正常:
$ echo $WINUSER
myusername
但是,如果我尝试将其插入字符串中,则我在变量之后放置的每个字符都将替换字符串开头的字符,如下所示:
echo "/mnt/c/User/$WINUSER/Documents"
/Documentsr/myusername
但是,如果我不在字符串后放置字符:
echo "/mnt/c/User/$WINUSER"
/mnt/c/User/myusername
它可以正确打印为粗壮,但我仍然无法cd /mnt/c/User/$WINUSER
由于它不会与其他变量(例如$ HOME)一起出现,因此我认为它取决于windows-wsl互操作性的输出。我该怎么解决?