当从他的开发机器上的商店安装Subsystem for Linux和Ubuntu时,我可以通过简单地切换(或启动)到Ubuntu shell
但默认情况下,Ubuntu shell在/home/techsupp
文件夹中启动。是否可以强制它在与我使用Ubuntu
命令的文件夹相同的文件夹中启动?
所以在我的例子中,我应该在
/mnt/h
谢谢。
我已尝试过的内容:
H:\>ubuntu help
Launches or configures a linux distribution.
Usage:
<no args>
- Launches the distro's default behavior. By default, this launches your default shell.
run <command line>
- Run the given command line in that distro, using the default configuration.
- Everything after `run ` is passed to the linux LaunchProcess call.
config [setting [value]]
- Configure certain settings for this distro.
- Settings are any of the following (by default)
- `--default-user <username>`: Set the default user for this distro to <username>
clean
- Uninstalls the distro. The appx remains on your machine. This can be
useful for "factory resetting" your instance. This removes the linux
filesystem from the disk, but not the app from your PC, so you don't
need to redownload the entire tar.gz again.
help
- Print this usage message.
请投票支持。
答案 0 :(得分:13)
如果您在任务管理器中检查资源管理器的“在这里打开Linux shell”选项如何打开wsl,您会看到有一个“ --cd”选项。
答案 1 :(得分:4)
如果使用wsl.exe
,它将在当前目录中启动WSL。但wsl
和ubuntu
之间的区别在于,如果您安装了两个或更多个发行版(例如,Ubuntu和Fedora),则默认的一个将开始。您可以通过运行wslconfig /setdefault Ubuntu
将默认值设置为Ubuntu。
参考:[1] https://docs.microsoft.com/en-us/windows/wsl/wsl-config
答案 2 :(得分:3)
似乎有一个非常简单的解决方案。
只需在Ubuntu配置中的profiles.json文件中添加以下内容
“命令行”:“ wsl〜-d Ubuntu”,
答案 3 :(得分:2)
ubuntu run
运行<命令行>
在当前工作目录中运行提供的命令行。如果没有
提供了命令行,启动了默认的shell。
据我所知,其效果与运行ubuntu
相同,只是它从当前目录开始。
即使在资源管理器中右键单击“在此处打开”命令,此命令也可以工作。改编自this article:
HKEY_CLASSES_ROOT\Directory\Background\shell
并创建一个新密钥(Default)
以“在此处打开Ubuntu”或类似的工具。command
的密钥(Default)
修改为ubuntu run
现在,在资源管理器中,您可以使用功能强大的“在此处打开Ubuntu”右键菜单。
wsl
的问题在于,即使wsl bash窗口启动了Ubuntu发行版,它也没有Ubuntu图标。
答案 4 :(得分:1)
使用此小脚本,您可以从Powershell当前所在的目录中执行每个命令。仅当驱动器已安装到子系统中的/ mnt /时,该命令才起作用。它不适用于网络资源。
function tux {$dl = (pwd).Path | wsl eval "cut -c 1 | tr 'A-Z' 'a-z'"; $wd = (pwd).Path | wsl eval "cut -d : -f 2 | tr '\\' '/' 2> /dev/null" ; wsl eval "cd '/mnt/$dl$wd' && eval '$args'"}
执行后,可以像这样使用它:
tux vim test.txt
答案 5 :(得分:1)
我在Windows 10 Home上安装了May Update,并安装了适用于WSL的Ubunto 18.04,我可以通过 Shift +右键单击在任何文件夹中打开控制台,然后选择 Open Linux shell 选项
答案 6 :(得分:0)
对我有用的方法是(WSL2和Ubuntu 20.04):
settings.json-将此行添加到“ Ubuntu-20.04”部分:
"startingDirectory": "//wsl$/Ubuntu-20.04/home/<username>/"
将<用户名>更改为您在安装Ubuntu 20.04时创建的用户名。
答案 7 :(得分:0)