[英]Opening Sublime Text from Bash on Ubuntu on Windows
我似乎无法弄清楚如何在 Windows 上的 Ubuntu 上从 Bash 打开 Sublime Text 2。 最终我希望能够使用subl .
打开我所在目录的内容。
在我的机器上,Sublime Text 2 安装在C:\\Program Files\\Sublime Text 2
。 sublime_text.exe
位于此目录中。 在 Windows 上的 Ubuntu 上的 Bash 中,我可以通过/mnt/c/
访问位于C
上的任何文件。
我尝试设置别名: alias subl="/mnt/c/Program\\ Files/Sublime\\ Text\\ 2/sublime_text.exe"
。 但是,在尝试subl .
我收到以下错误:
无法执行二进制文件:执行格式错误
如何正确设置?
现在可以在 Ubuntu 命令行上从 Bash 启动 Windows 可执行文件(如 Sublime Text)。
您还应该能够设置别名以从命令行使用它(正如您尝试做的那样)。 我的如下(并且工作正常):
alias subl='"/mnt/c/Program Files/Sublime Text 3/subl.exe"'
注意第二组引号:这是必要的,因为文件路径中有空格。 或者,您可以转义空格(就像您在示例中所做的那样)。
Nick F 的回答是正确的,但有一个重要的警告。
如果您打算使用 Sublime Text 编辑 Linux 文件,那么您应该重新考虑。 正如我亲眼所见,这样做会导致数据损坏。
有关原因的更多详细信息,请参见此处: https : //blogs.msdn.microsoft.com/commandline/2016/11/17/do-not-change-linux-files-using-windows-apps-and-tools/
我意识到这是一篇旧帖子,但我希望这可以作为对尝试设置 Sublime Text 以编辑 Linux 文件的其他用户的警告。
创建别名不会让你使用
subl path_to_file
相反,您可以将 subl 应用程序链接到您的 /bin 文件夹
sudo ln -s /mnt/c/Program\ Files/Sublime\ Text\ 3/subl.exe /bin/subl
完成!!
如果没有 /bin 文件夹,请执行whereis ls
并将 /bin 替换为输出目录
ps- /bin 是类 Unix 操作系统中的标准目录,其中包含可执行文件(二进制文件的缩写形式)
这是可以做到的。
您可以使用本地 Sublimeusing RemoteSubl(一个 SublimeText 插件)来编辑远程文件:
https://github.com/randy3k/RemoteSubl
在这种情况下开箱即用,并且还注意不同的文件子系统不会相互干扰。
如果有人想改进.. 检测文件是否在 windows 或 linux 领域的条件,并启动适当的编辑器......使用不同的主题......天啊! 那太好了。
通过将它添加到带有 Windows 10 Pro 的 WSL 中的 .zshrc Debian 中,这个对我有用
别名 subl="/mnt/c/Program\\ Files/Sublime\\ Text\\ 3/sublime_text.exe"
https://github.com/grigger/subl-wsl
这是我刚刚从一些 stackoverflow 答案开始编写的更完整的脚本,它将在 sublime 中打开两个带有 Windows 或 Linux 路径的文件。
即subl ~/something
将在C:\\Users\\<usr>\\AppData\\Local\\Packages\\...\\LocalState\\rootfs
subl /mnt/d/something
将打开D:\\something
我知道在回答之后还有很长一段时间,但也许将来会有其他一些人会得到帮助。
只是想向其他用户强调 2019 年 5 月 WSL 确实有更新,根据我的阅读,现在可以从 Windows 编辑 Linux 文件,只要您使用 9P 文件服务器(例如\\\\wsl$\\
) . 这是一个巨大的改进!
男人这是一个非常简单的事情,不要在Linux机器上使用Windows程序而不使用像Wine这样的东西。
根据你的dist,使用linux安装文件安装SublimeText。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.