Agregue la siguiente línea a su script init.d.
run-parts --report /etc/iptables/include.d
Ejecutará todo en el directorio como un script de shell (debe ser ejecutable).
Si solo desea ejecutar archivos que terminan en .port, puede usar algo como:
run-parts --regex '\.port$' /etc/iptables/include.d/
Si quiere asegurarse de que el orden es correcto, puede nombrar los archivos:
10_web.port
20_ssh.port
etc..
for f in /etc/iptables/include.d/*
. $f
done
observe el espacio entre el punto y %f
Saurabh tiene razón:esto no funcionará necesariamente como usted pretende, pero use alguna convención de nomenclatura, por ejemplo, 10-xxx, 20-yyy, etc., y podría ser manejable.
Puede definir una función simple en bash:
function include() {
for FILE in $( find "$1" -type f -print | sort )
do
source $FILE
done
}
y luego:
include some_dir/*
o incluso:
include some_dir/*.conf