Tag: zsh

在shell编程中做什么“导出”?

据我所知,variables赋值是相同的,不pipe是否在“导出”之前。 这是为了什么?

在OSX上从zsh切换到bash,然后再回来?

所以我学习在Rails中开发,并发现了zsh的力量。 但是,对于我的其他一些任务,我希望使用普通的Bash。 虽然他们都是一样的,但是在某些情况下,我只是觉得自己可以放心。 如何来回切换,或打开和closureszsh? 谢谢!

RVM在ZSH中不工作

我想尝试我的Mac上的ZSH shell,但是我也做了很多Ruby和Rails的开发,所以我也使用了RVM。 问题是,我似乎无法让RVM在ZSH中工作,而且在默认的Bash shell中工作正常: > zsh > rvm 1.9.2 > ruby -v ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0] > which ruby /usr/bin/ruby 我可以肯定地确认安装了RVM,以及RVM下的ruby 1.9.2; 我一直在Bash中使用它。 在ZSH中运行一个rvm list显示了这一点,有趣的是: rvm rubies ruby-1.8.7-p302 [ x86_64 ] => ruby-1.9.2-p0 [ x86_64 ] 这是我的iMac和MacBook Pro上发生的。 我在iMac上使用OS X 10.6.6,ZSH 4.3.9(4.3.10在笔记本电脑上)。 没有什么像哦,我的ZSH的花式。 我试着在RVM 网站上查看文档,但没有任何帮助。

命令行Zsh中的注释

我在Ubuntu上最近从Bash切换到Zsh,对此我感到非常高兴。 但是,我真的很想念,而且我也没有find如何实现同样的目标。 在Bash中,每当我input一个很长的命令,并且注意到之前我必须运行其他东西,我只需要将它注释掉,如下所示: me@home> #mysuperlongcommand with some arguments me@home> thecommandIhavetorunfirst #and then: then up up me@home> #mysuperlongcommand with some arguments #I just need to uncomment it! 然而,这种相当反复的情况并不像zsh那样容易解决,因为#mysuperlongcommand将以这种方式运行(并导致zsh: command not found: #mysuperlongcommand 。

家酿的`git`不使用完成

当使用OSX的git时,在修改文件后,我可以简单地执行git commit <tab> ,然后自动完成文件的名称修改。 但是,如果我从自制软件安装更新版本的git,并且使用它,该function将不再有效(意思是我按<tab>键,只是“询问”我要做什么文件,甚至包括那些没有变化)。 任何人都可以阐明为什么,以及如何解决? 我更喜欢使用自制软件,因为它是最新的。 我的shell是zsh,安装bash-completion或zsh-completions都没有问题(即使在遵循homebrew的安装后指示)。 另外,在安装git后用自制软件说 Bash completion has been installed to: /usr/local/etc/bash_completion.d zsh completion has been installed to: /usr/local/share/zsh/site-functions 所以我不能使用其中之一?

OSX 10.10 git pull上的优胜美地testing版:git-sh-setup:没有这样的文件或目录

升级到OSX 10.10 Yosemite Beta后,运行git pull会返回以下错误: / Library / Developer / CommandLineTools / usr / libexec / git-core / git-pull:第11行:git-sh-setup:没有这样的文件或目录 我已经检查了引用的git-core目录,并且git-sh-setup.sh在那里。 其他的git命令完全按照预期工作

npm全局path前缀

我比以前更加谨慎,因为过去npm的行为让我感到困惑。 我在Mac上并通过brew install node安装了node.js。 现在我想在命令行上运行jslint.js作为命令jslint我发现完成此操作的规范方法是使用此输出成功运行的sudo npm install -g jslint : $ sudo npm install -g jslint npm http GET https://registry.npmjs.org/jslint npm http 200 https://registry.npmjs.org/jslint npm http GET https://registry.npmjs.org/jslint/-/jslint-0.1.9.tgz npm http 200 https://registry.npmjs.org/jslint/-/jslint-0.1.9.tgz npm http GET https://registry.npmjs.org/nopt npm http 200 https://registry.npmjs.org/nopt npm http GET https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http 200 https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz npm http GET https://registry.npmjs.org/abbrev npm http 200 […]

检查当前目录是否为Git存储库

我正在为zsh编写一系列用于Gitpipe理的脚本。 如何检查当前目录是否为Git存储库? (当我不在Git fatal: Not a git repository ,我不想执行一堆命令并得到一堆fatal: Not a git repository响应)。

如何使zsh在Mac OS X(在iTerm中)作为loginshell运行?

当zsh在Mac OS X上被设置为loginshell时,当它由iTerm启动时,zsh并不认为它是作为loginshell运行的,虽然它是以'-zsh'(' – '作为arg [0]的第一个字符),它应该表示它应该作为loginshell启动。 所以,当我将loginshell设置为bash时,bash首先在$ 0中识别出这个“ – ”,并作为loginshell运行,但是zsh并没有这样做,尽pipe看起来应该如此。 有没有办法让zsh识别arg [0]中的' – ',或者让iTerm使用–login命令行参数运行shell?

zsh compinit:不安全的目录

这是什么意思,我该如何解决? zsh compinit: insecure directories, run compaudit for list. Ignore insecure directories and continue [y] or abort compinit [n]? 运行compaudit返回如下: There are insecure directories: /usr/local/share/zsh/site-functions