Articles of bash

Bash脚本无限启动进程

Ubuntu Linux系统。 基本名称工具必须安装。 Bash脚本被命名为“basename” #!/bin/bash PROGNAME=$(basename $0) if [[ -e $1 ]]; then echo -e "\nFile Type:" file $1 echo -e "\nFile Status:" stat $1 else echo "$PROGNAME: usage: $PROGNAME file" >&2 exit 1 fi 启动“./basename case”后,“case”是一个bash脚本,发生错误: /home/user/bin/basename: fork: retry: No child processes /home/user/bin/basename: fork: retry: No child processes … /home/user/bin/basename: fork: Resource temporarily unavailable […]

即使没有匹配的文件,查找成功

我在bash脚本中使用find来清理一些超过一天的caching文件: find /tmp/my_files_*.cache -mtime +1 -delete 问题是如果命令没有匹配任何文件,则会导致脚本的其余部分无法运行: find: `/tmp/my_files_*.cache': No such file or directory 我目前正在通过追加|| true解决它 || true的命令,但这是不理想的,因为错误仍然出现在输出中,它允许脚本继续超过任何其他可能发生的错误。 我怎么知道如果没有文件匹配就可以?

在bash脚本中,>和> |有什么区别 redirect?

以下两个redirect命令有什么区别? ls > out ls >| out 他们似乎都产生了相同的产出。

每小时cron作业没有运行

我们有一个cron脚本,用于在我们的环境中运行Salt以及其他几个步骤,但由于某种原因,它根本就没有执行。 root@salt:~# cat /etc/cron.hourly/salt-apply.sh #!/bin/bash /bin/cat << EOF | /bin/bash 2>&1 > /var/log/salt-apply.log /bin/date cd /srv/salt /usr/bin/git pull /usr/bin/salt '*' saltutil.sync_all /usr/bin/salt '*' state.apply /bin/date EOF root@salt:~# ls -l /etc/cron.hourly/salt-apply.sh -rwxr-xr-x 1 root root 199 Feb 7 22:47 /etc/cron.hourly/salt-apply.sh 它不运行,/var/log/salt-apply.log中没有错误,并且cron似乎正在运行小时运行部分: root@salt:~# grep -i cron.hourly /var/log/syslog | tail -n 5 Feb 7 22:17:01 salt CRON[6941]: (root) […]

将多行STDINinput送入命令

我有一个脚本,输出git存储库的SSHurl,如下所示: [email protected]:namespace/project.git [email protected]:another_namespace/some_other_project.git 我想为每一行运行命令git clone (或其他命令)。 我试着将它输送到xargs ,但是我要么在一行中获得输出,要么将多行input转储为单个命令。 你如何通过pipe道在每一行上运行一个任意的命令?

什么是Bash命令来创build一个硬链接到OS X中的一个目录?

如何在OS X中创build一个指向目录的硬链接(而不是符号链接或Mac OS别名)? 有“目标目标”命令,但只有当目标是文件时才起作用。 我知道Mac OS与其他Unix环境不同,它允许硬链接到文件夹(例如Time Machine),但是我不知道如何自己做。 我也意识到,使用目录硬链接不是“最佳实践”,因为它可以导致一些程序扫描树无限recursion。

当它的path被作为一个命令input时,cd到一个目录(而不是“foo是一个目录”错误)

我讨厌什么时候bash给我“呃!” 那种错误: foo$ ./bar -bash: ./bar: is a directory 我曾经喜欢AmigaOS shell,其中目录的“执行”仅仅意味着将其设置为当前目录: foo$ ./bar bar$ 在bash可能吗? (当然没有无限的别名)。

Bash脚本创build大量的目录系列

我需要创build一个Bash脚本来进入每个用户的home文件夹,找出一个wp-content文件夹,在它下面创build一个目录上传 ,然后chmod 0756上传 。 我如何做到这一点? 我想我需要使用正则expression式/正则expression式使用查找 ,然后告诉它运行结果上的另一个bash脚本。

如何从Web浏览器运行Linux bash脚本?

您好我也有Web服务器。 我用vi编辑器做了一个简单的bash脚本,它会打开文件,然后添加一些行到最后它会自动保存…之后,2-3 linux命令将作为一个特定的用户运行。 现在我想从网页浏览器做同样的事情,所以我需要为此做些什么? html?perl?python?cgi?….?这是简单的方法吗?

如何检查我用来编译程序的命令?

可能重复: 如何获取上次使用的./configure参数? 前段时间在Centos下,Bash从源文件编译了一个程序。 现在我需要再次编译一个新的标志。 有什么方法可以找出我上次在Linux Centos下编译这个程序的命令吗?