如何使用UNIX命令find来search在特定date创build的文件?
我目前通过一堆不好记住的AWK,sed,Bash和一小部分的Perl来处理我的文本文件。 我已经提到了几个地方,python是这种东西很好,我知道一点,我想了解更多。 Python是一个很好的select,是否有一本好书或者指南来学习如何使用Python来代替shell脚本,AWK,sed和朋友?
我试了下面的脚本 #!/bin/bash var1="Test 1" var2="Test 2" if [ "$var1"="$var2" ] then echo "Equal" else echo "Not equal" fi 它给了我Equal 。 虽然它应该打印Not equal 只有当我插入空间=它按预期工作 if [ "$var1" = "$var2" ] 和打印Not equal 为什么这样? 为什么"$var1"="$var2"与"$var1" = "$var2"不一样? 此外,当我写了if [ "$var1"= "$var2" ] ,它给了 line 4: [: Test 1=: unary operator expected 这是什么意思? 它如何期待一元运算符?
在使用Bash的时候,我可以把一个命令的输出放到另一个命令中,如下所示: my_command `echo Test` 将是一样的事情 my_command Test (显然,这只是一个非实际的例子。) 我只是想知道你是否可以在批处理中做同样的事情。
我正在尝试做一些足够普通的事情:在shell脚本中parsing用户input。 如果用户提供了一个有效的整数,那么脚本会做一件事情,如果无效的话,它会做其他事情。 麻烦的是,我还没有find一个简单的(合理的,优雅的)做这个方法 – 我不想一个一个的字符。 我知道这一定很容易,但我不知道如何。 我可以用十几种语言做,但不是BASH! 在我的研究中,我发现这一点: 正则expression式来testing一个string是否包含以10为底的有效实数 在那里有一个关于正则expression式的答案,但据我所知,这是C语言中的一个函数(等等)。 尽pipe如此,它看起来像一个很好的答案,所以我尝试了与grep,但grep不知道该怎么办。 我尝试了-P,在我的盒子上意味着把它当作PERL regexp – nada。 短跑E(-E)也没有工作。 而且-F。 只是要清楚,我正在尝试这样的事情,寻找任何输出 – 从那里,我将破解剧本利用我得到的任何东西。 (IOW,我期待一个不合格的input不会在有效的行重复时返回。) snafu=$(echo "$2" | grep -E "/^[-+]?(?:\.[0-9]+|(?:0|[1-9][0-9]*)(?:\.[0-9]*)?)$/") if [ -z "$snafu" ] ; then echo "Not an integer – nothing back from the grep" else echo "Integer." fi 有人请说明这是如何做到最简单吗? 坦率地说,在我看来,这是TEST的一个短暂的过程。 它应该有这样的旗帜 if [ -I "string" […]
我有目录命名为: 2012-12-12 2012-10-12 2012-08-08 如何删除bash shell脚本超过10天的目录?
我有一个文件, foo.txt ,包含以下几行: a b c 我想要一个简单的命令,导致foo.txt的内容是: a b
有没有办法像PHPs $array[] = 'foo'; 在bash vs做: array[0] = 'foo' array[1] = 'bar'
这是一个非常简单的问题,至less它应该是这样的,关于Linux中的sudo权限。 有很多时候,我只是想附加一些东西到/etc/hosts或类似的文件,但最终不能够,因为>和>>都不允许,即使有根。 有没有办法使这个工作,而不必su或sudo su到根?
我想知道是否有人能够帮我一个.sh文件运行,当我login到我的电脑上我的帐户。 我正在运行Mac OS X 10.6.7。 我有一个文件“Example.sh”,当我login到我的电脑时,我想运行。 我没有问题,当我已经login,但我希望这个自动运行。 人们正在说要将它添加到loginshell文件,但我不知道这是什么。 请帮助一些。