如何从命令行inputGit commit消息中的感叹号? 可以用反斜线转义感叹号,但反斜杠也会在提交消息中结束。 我想要这样的东西: git commit -am "Nailed it!"
我非常了解这一点: $ command 2>> error $ command 1>> output 有没有什么办法,我可以输出stderr到错误文件,并输出stdout输出文件在同一行bash?
目前我正在做一些从bash执行的unit testing。 unit testing被初始化,执行并在bash脚本中清理。 这个脚本通常包含一个init(),execute()和cleanup()函数。 但他们不是强制性的。 我想testing他们是否定义。 以前我是通过greping和seding来源来做到这一点的,但是这看起来不对。 有没有更优雅的方式来做到这一点? 编辑:下面的sniplet就像一个魅力: fn_exists() { type $1 | grep -q 'shell function' }
我想定义一个连续运行以下两个命令的别名。 gnome-screensaver gnome-screensaver-command –lock 现在我已经添加了 alias lock='gnome-screensaver-command –lock' 到我的.bashrc,但由于我经常locking我的工作站,只需键入一个命令会更容易。
当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?
我有一个variables,其中包含空格分隔的string: line="1 1.50 string" 我想分割该string与空格作为分隔符并将结果存储在一个数组中,以便以下内容: echo ${arr[0]} echo ${arr[1]} echo ${arr[2]} 输出 1 1.50 string 某处我find了一个不起作用的解决scheme: arr=$(echo ${line}) 如果在这之后运行上面的echo语句,我会得到: 1 1.50 string [empty line] [empty line] 我也试过了 IFS=" " arr=$(echo ${line}) 结果相同。 有人可以帮忙吗?
在terminal的特定命令行上移动的最佳方式是什么? 说我用箭头键或Ctrl – R来获得这个长的命令行: ./cmd –option1 –option2 –option3 –option4 –option5 –option6 –option7 –option8 –option9 –option10 –option11 –option12 –option13 –option14 –option15 –option16 –option17 –option18 –option19 –option20 –option21 –option22 –option23 –option24 –option25 –option26 –option27 –option28 –option29 –option30 –option31 –option32 –option33 –option34 –option35 –option36 –option37 –option38 –option39 –option40 –option41 –option42 –option43 –option44 –option45 –option46 –option47 –option48 –option49 –option50 […]
我有一个Dockerfile,我正在安装一个香草python环境(我将安装一个应用程序,但在以后的date)。 FROM ubuntu:12.04 # required to build certain python libraries RUN apt-get install python-dev -y # install pip – canonical installation instructions from pip-installer.org # http://www.pip-installer.org/en/latest/installing.html ADD https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py /tmp/ez_setup.py ADD https://raw.github.com/pypa/pip/master/contrib/get-pip.py /tmp/get-pip.py RUN python /tmp/ez_setup.py RUN python /tmp/get-pip.py RUN pip install –upgrade pip # install and configure virtualenv RUN pip install virtualenv RUN pip install […]
我有下面的脚本减去两个目录之间的文件计数,但COUNT=expression式不起作用。 什么是正确的语法? #!/usr/bin/env bash FIRSTV=`ls -1 | wc -l` cd .. SECONDV=`ls -1 | wc -l` COUNT=expr $FIRSTV-$SECONDV ## -> gives 'command not found' error echo $COUNT
我试图在Cygwin中运行一个bash脚本。 我得到Must run as root, ie sudo ./scriptname错误。 chmod 777 scriptname没有任何帮助。 我已经find了在Cygwin上模仿sudo的方法,添加一个root用户,因为调用“su”会导致错误su: user root does not exist ,任何有用的东西,都没有find。 任何人有任何build议?