Tag: bash

Bash set + x没有被打印

有没有人知道如果我们可以说在bash中set +x而不打印: set -x command set +x 痕迹 + command + set +x 但它应该只是打印 + command Bash是版本4.1.10(4)。 这一直在困扰我一段时间 – 输出混乱无用的set +x线,使跟踪设施没有那么有用。

while循环来testing一个文件是否存在于bash中

我正在研究一个shell脚本,它只对txt文件进行某些更改,但是这个testing循环不起作用,我想知道为什么? 谢谢! while [ ! -f /tmp/list.txt ] ; do sleep 2 done

Bash脚本绝对path与OSX

我正在尝试获取OS X上正在运行的脚本的绝对path。 我看到许多回复为readlink -f $0 。 但是,由于OS X的readlink与BSD相同,它只是不起作用(它与GNU的版本一起工作)。 任何build议,为此开箱即用的解决scheme?

Capistrano&Bash:忽略命令退出状态

我正在使用Capistrano运行远程任务。 我的任务是这样的: task :my_task do run "my_command" end 我的问题是,如果my_command的退出状态!= 0,那么Capistrano认为它失败并退出。 退出状态不为0时,如何让capistrano继续退出? 我已经将my_command更改为my_command;echo和它的工作,但它感觉像一个黑客。

Bash脚本缺less']'

我得到一个错误./test.sh:第13行:[:缺less`]'在test.sh文件中我尝试使用括号和其他选项,如-a或通过检查文件的大小,但错误是总是在那里,其他语句总是被执行,而不pipe给定的input。我甚至试图通过删除; 在13行,但没有帮助。 test.sh #!/bin/bash echo "Enter app name" read y $y & top -b -n 1 > topLog.log #-w checks for the whole word not and sub string from that word grep -w "$y" topLog.log > p1 #-s option checks if the file p1 is present or not if [ -s "p1"]; #line 13 then […]

什么是在bash上打勾的cmd / powershell等价物?

redirect命令输出: 例如: echo "Foo `./print_5_As.rb`" 会回应“Foo AAAAA”

如何从Bash中的string中删除回车

我有以下variables。 echo "|$COMMAND|" 哪个返回 | REBOOT| 我怎样才能删除第一个回车?

文件大小以人们可读的格式

给定一个文件大小的字节数,我想用IEC(二进制)前缀格式化为3个有效数字 ,后缀为零 ,例如1883954变为1.80M。 bash不支持浮点运算,所以我用awk代替。 问题是我不怎么保留尾随零。 当前解决scheme if [ $size -ge 1048576 ] then size=$(awk 'BEGIN {printf "%.3g",'$size'/1048576}')M elif [ $size -ge 1024 ] then size=$(awk 'BEGIN {printf "%.3g",'$size'/1024}')K fi (文件不是那么大,所以我不必考虑更大的单位。) 编辑:这是另一个问题。 请参阅下面的AdrianFrühwirth的评论。

在纯bash中使用regexp提取子string

我试图用bash从string中提取时间,而且我很难搞清楚。 我的string是这样的: US/Central – 10:26 PM (CST) 我想提取10:26部分。 任何人都知道只有用bash才能做到这一点 – 不使用sed,awk等? 就像在PHP中,我会使用 – 不是最好的方式,但它的作品 – 如: preg_match( ""(\d{2}\:\d{2}) PM \(CST\)"", "US/Central – 10:26 PM (CST)", $matches ); 感谢您的帮助,即使答案使用sed或awk

PS1线与git当前分支和颜色

这是我目前的PS1 export PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ ' 我怎样才能以不同的颜色显示当前分支?