我知道在Linux / MacOS上有办法从terminal发送电子邮件,但我似乎无法find有关如何做到这一点的适当文件。 基本上我需要它为我的bash脚本,每当文件发生变化时通知我。
如果我想检查单个文件的存在,我可以使用test -e filename或[ -e filename ]进行test -e filename 。 假设我有一个glob,我想知道是否存在名称与glob匹配的文件。 glob可以匹配0个文件(在这种情况下,我不需要做任何事情),也可以匹配1个或多个文件(在这种情况下,我需要做些什么)。 我如何testingglob是否有任何匹配? (我不在乎有多less比赛,如果我可以用一个if语句和没有循环(简单地说是因为我觉得最可读)做到这一点是最好的。 (如果glob匹配多个文件,则test -e glob*失败。)
我是新的shell脚本,任何人都可以帮忙吗? 我想从当前date删除文件夹中的脚本到10天。 这些脚本看起来像: 2012.11.21.09_33_52.script 2012.11.21.09_33_56.script 2012.11.21.09_33_59.script 该脚本将每10天运行一次Crontab,这就是为什么我需要当前date。
我有一个string包含许多单词之间至less有一个空格。 我怎样才能把string分成单独的单词,所以我可以通过它们循环? 该string作为parameter passing。 例如${2} == "cat cat file" 。 我怎样才能通过它? 另外,如何检查一个string是否包含空格?
\curl -L https://get.rvm.io | bash -s stable 为什么命令以'\'开头? 这是我看到它的网站
我有一个包含几千个数字的文件,每个数字都在它自己的行上: 34 42 11 6 2 99 … 我正在寻找一个脚本,将打印文件中的所有数字的总和。 我有一个解决scheme,但效率不高。 (这需要几分钟的时间。)我正在寻找一个更有效的解决scheme。 有什么build议么?
我想知道是否有任何提示尽可能快地使grep 。 我有一个相当大的文本文件的基础,以尽可能快的方式进行search。 我已经把它们全写成小写,这样我就可以摆脱-i选项。 这使得search速度更快。 另外,我发现-F和-P模式比默认模式快。 当searchstring不是正则expression式(只是纯文本)时使用前者,如果涉及正则expression式则使用后者。 有没有人有加快grep经验? 也许用一些特殊的标志(我在Linux CentOS上)从头开始编译它,以某种方式组织文件,或者以某种方式使search平行?
在给定的shell中,通常我会设置一个或多个variables,然后运行一个命令。 最近我学到了将一个variables定义添加到一个命令的概念: FOO=bar somecommand someargs 这工作…种。 当你改变一个LC_ *variables(这似乎影响命令而不是它的参数,例如'[az]'字符范围),或者当输出到另一个命令时,它不起作用: FOO=bar somecommand someargs | somecommand2 # somecommand2 is unaware of FOO 我可以用“FOO = bar”来预先指定一些命令2,它可以工作,但是会增加不必要的重复,并且不依赖于根据variables解释的参数(例如'[az]') 那么,在一条线上做这件事的好方法是什么? 我正在考虑的事情是: FOO=bar (somecommand someargs | somecommand2) # Doesn't actually work 编辑:我有很多很好的答案! 目标是保持这一点,最好不用“出口”。 使用调用bash的方法总体上是最好的,虽然其中的“导出”的括号版本更紧凑一些。 使用redirect而不是pipe道的方法也很有趣。
我的bashshell需要3-4秒才能启动,而如果我用–norc启动,它会立即运行。 我通过手动插入return语句并寻求速度改进来开始“分析” /etc/bash.bashrc和~/.bashrc ,但这不是一个定量过程,效率也不高。 我怎样才能分析我的bash脚本,看看哪些命令最需要启动?
我有这个脚本,但我不知道如何获得打印输出中的最后一个元素: cat /proc/cpuinfo | awk '/^processor/{print $3}' 最后一个元素应该是CPU的数量,减1。