我发现grep的–color=always标志是非常有用的。 但是,grep只打印匹配的行(除非你要求上下文行)。 鉴于它打印的每一行都有匹配,突出显示不会增加尽可能多的function。 我真的cat一个文件,并看到整个文件与突出显示模式匹配。 有什么方法可以告诉grep打印每一行正在阅读,无论是否有匹配? 我知道我可以编写一个脚本来在文件的每一行上运行grep,但我很好奇这是否可以使用标准的grep 。
我只find了如何等待用户input。 但是,我只想暂停一下while true我的电脑就不会崩溃。 我尝试了pause(1) ,但它说-bash: syntax error near unexpected token '1' 。 如何做呢?
我有一个很长的文件,我想打印,但跳过第一个1e6线,例如。 我看着猫的手册页,但我没有看到任何select这样做。 我正在寻找一个命令来做这个或一个简单的bash程序。
我怎样才能让ls吐出一个recursion的一行一行的path列表? 例如,我只想要一个完整path的文件列表: /home/dreftymac/. /home/dreftymac/foo.txt /home/dreftymac/bar.txt /home/dreftymac/stackoverflow /home/dreftymac/stackoverflow/alpha.txt /home/dreftymac/stackoverflow/bravo.txt /home/dreftymac/stackoverflow/charlie.txt ls -a1几乎做我需要的,但我不想要path碎片,我想要完整的path。
我想杀死所有的进程: ps aux | grep my_pattern 怎么做? 这不起作用: pkill my_pattern
我试图做一个简单的条件检查,但它似乎并没有工作。 如果$#等于0或者大于1那就打个招呼吧。 我尝试过以下语法,但没有成功: if [ "$#" == 0 -o "$#" > 1 ] ; then echo "hello" fi if [ "$#" == 0 ] || [ "$#" > 1 ] ; then echo "hello" fi
我需要一些像date一样简单的东西,但是从1970年开始,而不是现在的date,时间,分钟和秒钟。 date似乎没有提供该选项。 有一个简单的方法吗?
我在Bash编写脚本来testing一些代码。 然而,如果编译代码首先失败,运行testing似乎很愚蠢,在这种情况下,我将放弃testing。 有没有一种方法,我可以做到这一点,而不包括在一个while循环内的整个脚本,并使用rest? 像邓敦顿那样的东西?
我有几个Unix shell脚本,在开始做某些事情之前,我需要检查是否设置了某些环境variables,所以我这样做: if [ -z "$STATE" ]; then echo "Need to set STATE" exit 1 fi if [ -z "$DEST" ]; then echo "Need to set DEST" exit 1 fi 这是很多打字。 是否有一个更优雅的习惯用于检查是否设置了一组环境variables? 编辑:我应该提到,这些variables没有有意义的默认值 – 脚本应该错误,如果有任何未设置。
我怎样才能确定脚本本身内的Bash脚本文件的名称? 就像如果我的脚本在文件runme.sh ,那么我将如何使它显示“你正在运行runme.sh”消息,而不硬编码?