27

我是 Windows 用户。但是根据我的项目需求,我需要编写Linux Shell Script(Bash shell)。如何在 Windows 上开发 Linux Shell?

是否有任何用于编写 Linux Shell 脚本的 IDE?请分享一些想法和资源链接。

4

10 回答 10

22

你有很多选择:

赛格温

安装cygwin。它会给你一个狂欢。

明威

windows的最小 GNU。附带一组命令、编译器。这是我在 Windows 上的 Git 附带的,现在是小脚本的默认 shell

虚拟机,例如 VirtualBox

有大量虚拟机,VirtualBox 易于使用(它为Boot2Docker 提供动力)。您可以在真正的 Linux 发行版上进行开发和测试。

Windows 10 上的 Ubuntu

街区里来了一个新孩子。这允许您使用适用于 Linux 的 Windows 子系统 (WSL) 运行用户空间 Ubuntu。在Microsoft 博客上查看更多信息

其他说明/IDE 支持

Shell 脚本应该很小,需要更少的 IDE 等。我使用语法高亮的 VIM。但似乎ShellED在您的情况下可能有用。我从这个问题的答案中获得了链接 - Eclipse 的 Bash 脚本插件?

IntelliJ 也有几个用于 Bash的插件。

于 2012-09-06T05:31:25.350 回答
10

我更喜欢Gow(Windows 上的 Gnu)而不是 Cygwin。两者都会在 Windows 上为您提供 bash,但 Cygwin 对文件系统访问(/cygdive/c/some/path而不是c:\some\path)有不自然的约定。

原生的 windows 命令终端很蹩脚,看看Conemu

我不知道有任何 bash IDE,但是有大量的 Windows 文本编辑器,它们为 bash 脚本提供了不错的语法高亮显示。我喜欢Notepad++Sublime 文本(来自 Sublime 的多光标功能!)。我不建议将 bash 用于超过 30 行的任何内容,如果您觉得需要 IDE,也许该任务更适合 Python、Ruby 或 Perl(恕我直言,Python 更易于维护)。

于 2012-09-06T06:07:06.720 回答
10

Bash shell 将在即将到来的周年更新 (Redstone) 中用于 Windows 10。

Bash shell 即将登陆 Windows。是的,真正的 Bash 即将登陆 Windows,微软的 Kevin Gallo 在 Build 2016 主题演讲中说。这不是 VM [虚拟机]。这不是交叉编译的工具。这是原生的。”

以下是在 Windows 10 操作系统上运行 Bash 的步骤:

  1. 打开 Windows 开始菜单
  2. 键入“bash” [按回车键]
  3. 这会打开一个运行 Ubuntu 的控制台/bin/bash,可以完全访问所有 Ubuntu 用户空间

是的,你是对的,这意味着apt,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,纳米...... _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _在 Ubuntu 档案中!setsshrsyncfindlsgrepawksedsortxargsmd5sumgpgcurlwgetapachemysqlpythonperlrubyruby gemphpgcctarvimemacsdiffpatch

参考

  1. 启用 Windows 10 的 Ubuntu Bash Shell 的分步指南(适用于 Linux 的 Windows 子系统)

  2. Bash shell 将在即将到来的周年更新 (Redstone) 中用于 Windows 10。

  3. 在 Windows 上的 Ubuntu 上运行本机 Bash

于 2016-04-08T07:12:10.463 回答
5

由于您需要编写 linux shell 脚本,因此您正在学习 Linux。所以你应该在你的机器上安装 Linux(最好在它自己的分区上并从它启动,否则在 VM 中)。

使用cygwin或模仿 Linux shell 不是使用 Linux。emacs通过安装和使用 Linux(以及使用或geditgvim....之类的编辑器在其上进行开发),您将学到更多。此外,利用 Linux 几乎完全是免费软件的优势,您可以研究它的源代码并改进它。

不安装 Linux 对自己不利。

我相信cygwin适合那些喜欢 Linux 但必须使用 Windows 的人。它不能给您整个 Linux 的感觉(例如,您将无法编写 shell 脚本来查看/procWindows 中不存在的内容,即使使用 cygwin 也是如此)。

于 2012-09-06T05:49:18.807 回答
2

有 cygwin ,这是一个 Windows 的 linux 控制台。所以你可以用它执行所有的 linux 命令。

于 2012-09-06T05:33:32.970 回答
2

如果您想使用模拟所有 Linux 环境的简单环境来替代 cygwin(更轻量级),您可以尝试mingw,您可以使用 notepad++ 或 emacs 或 vim 在 sh 脚本上提供一些语法高亮。

于 2012-09-06T08:06:31.757 回答
2

每个人都说要使用完整的 Linux 或使用各​​种模拟。如果您不需要那么多,Cloud9.io 是一个不错的选择。你可以设置一个可以在线访问的“工作区”,让你可以用任何类似于 np++ 的语言编写,但最好的部分是,它是一个在线 Linux,所以你有一个终端,里面有你所有的 shell 命令——没有模拟起来,没有双启动。

这样做的缺点是免费用户没有那么大的权力,所以如果你想执行一些高级数学或输出一个大图像,它会因为你使用太多内存而崩溃。但它仍然非常值得一试,它只在我身上崩溃过一次,而且我做了一些相当耗费内存的事情。

于 2015-08-28T22:47:14.330 回答
1

安装 Cygwin 以执行命令。但是,您可以使用 NotePad++ 作为具有本机 Windows 二进制文件的编辑器。

http://www.cygwin.com/

http://notepad-plus-plus.org/

于 2012-09-06T05:54:46.257 回答
1

对于 Eclipse Luna 应该使用这个旧版本在 UI 错误上失败

Help > Install New Software… > Add… 

名称:ShellEd

位置:http: //sourceforge.net/projects/shelled/files/shelled/update/

于 2015-03-24T10:55:00.643 回答
-1

我有一个类似的问题。我喜欢 Linux 和 Windows,我同时在这两个系统上工作,但出于不同的原因,我使用 Windows 进行编程(通常是文本编辑)。例如,我在 Windows 上编写 C/C++ 代码,使用 Windows DevC++ IDE,然后我可以在 Linux 上编译这个项目,通过在 LAN 上共享文件。现在我必须写很长的脚本,我想以类似的方式来做。好吧,也许这是一个特殊的要求,但也许我不是唯一一个在这种混合环境中工作的人。首先,我尝试了notepad++(其他人也建议这样做),但它是否支持Linux脚本的语法高亮?我没有找到这个功能......然后我尝试了为Windows编译的gedit。它需要安装 GTK 库(实际上它已经在我的 Windows 上)。Gedit 有脚本的语法高亮!所以我建议在这种情况下使用 gedit for Windows。编辑后的脚本不能直接用它启动/测试,但用于编辑,没问题!

于 2014-09-06T00:39:38.613 回答