|
楼主 |
发表于 2008-5-7 16:04:41
|
显示全部楼层
在 http://examples.oreilly.com/upt3/ 处找到一个“run-part”的简易替代品:
run-parts.sh
- #!/bin/bash
- # Source:
- # [url]http://examples.oreilly.com/upt3/[/url]
- # Author:
- # O'RIILY
- # Gain:
- # 2008-05-07 16:05
- # run-parts - concept taken from Debian
- # keep going when something fails
- set +e
- if [ $# -lt 1 ]; then
- echo "Usage: run-parts <dir>"
- exit 1
- fi
- if [ ! -d $1 ]; then
- echo "Not a directory: $1"
- exit 1
- fi
- # Ignore *~ and *, scripts
- for i in $1/*[^~,] ; do
- [ -d $i ] && continue
- # Don't run *.{rpmsave,rpmorig,rpmnew,swp} scripts
- [ "${i%.rpmsave}" != "${i}" ] && continue
- [ "${i%.rpmorig}" != "${i}" ] && continue
- [ "${i%.rpmnew}" != "${i}" ] && continue
- [ "${i%.swp}" != "${i}" ] && continue
- [ "${i%,v}" != "${i}" ] && continue
- if [ -x $i ]; then
- $i 2>&1 | awk -v "progname=$i" \
- 'progname {
- print progname ":\n"
- progname="";
- }
- { print; }'
- fi
- done
- exit 0
复制代码
========================================
#!/bin/bash# Source:
# http://examples.oreilly.com/upt3/
# Author:
# O'RIILY
# Gain:
# 2008-05-07 16:05
# run-parts - concept taken from Debian
# keep going when something fails
set +e
if [ $# -lt 1 ]; then
echo "Usage: run-parts <dir>"
exit 1
fi
if [ ! -d $1 ]; then
echo "Not a directory: $1"
exit 1
fi
# Ignore *~ and *, scripts
for i in $1/*[^~,] ; do
[ -d $i ] && continue
# Don't run *.{rpmsave,rpmorig,rpmnew,swp} scripts
[ "${i%.rpmsave}" != "${i}" ] && continue
[ "${i%.rpmorig}" != "${i}" ] && continue
[ "${i%.rpmnew}" != "${i}" ] && continue
[ "${i%.swp}" != "${i}" ] && continue
[ "${i%,v}" != "${i}" ] && continue
if [ -x $i ]; then
$i 2>&1 | awk -v "progname=$i" \
'progname {
print progname ":\n"
progname="";
}
{ print; }'
fidone
exit 0
[ 本帖最后由 自由狼-台风 于 2008-5-7 16:19 编辑 ] |
|