diff options
Diffstat (limited to 'rc.d/init.d')
-rwxr-xr-x | rc.d/init.d/functions | 12 | ||||
-rwxr-xr-x | rc.d/init.d/network | 9 |
2 files changed, 16 insertions, 5 deletions
diff --git a/rc.d/init.d/functions b/rc.d/init.d/functions index 19a86c16..2576f463 100755 --- a/rc.d/init.d/functions +++ b/rc.d/init.d/functions @@ -573,3 +573,15 @@ resolve_dm_name() { /sbin/dmsetup table | egrep -iv "no block devices found|No devices found" | sed -n "s/\(^[^:]\+\): $newline\( \+$\|$\)/\1/p" ) 2>/dev/null } + +# Check whether file $1 is a backup or rpm-generated file and should be ignored +is_ignored_file() { + case "$1" in + *~ | *.bak | *.orig | *.rpmnew | *.rpmorig | *.rpmsave) + return 0 + ;; + esac + return 1 +} +# A sed expression to filter out the files that is_ignored_file recognizes +__sed_discard_ignored_files='/\(~\|\.bak\|\.orig\|\.rpmnew\|\.rpmorig\|\.rpmsave\)$/d' diff --git a/rc.d/init.d/network b/rc.d/init.d/network index a16a2692..19fa0264 100755 --- a/rc.d/init.d/network +++ b/rc.d/init.d/network @@ -43,13 +43,12 @@ cd /etc/sysconfig/network-scripts # find all the interfaces besides loopback. # ignore aliases, alternative configurations, and editor backup files -interfaces=`ls ifcfg* | \ - LANG=C sed -e '/\(ifcfg-lo\|:\|ifcfg-.*-range\)/d' \ - -e '/\(rpmsave\|rpmorig\|rpmnew\)/d' \ - -e '/\(~\|\.bak\)$/d' \ +interfaces=$(ls ifcfg* | \ + LANG=C sed -e "$__sed_discard_ignored_files" \ + -e '/\(ifcfg-lo\|:\|ifcfg-.*-range\)/d' \ -e '/ifcfg-[A-Za-z0-9\._-]\+$/ { s/^ifcfg-//g;s/[0-9]/ &/}' | \ LANG=C sort -k 1,1 -k 2n | \ - LANG=C sed 's/ //'` + LANG=C sed 's/ //') # See how we were called. case "$1" in |