Concaténation de données de différentes origines
D'accord, le titre est difficilement compréhensible. Je vais tenter d'expliquer plus clairement:
Je veux créer automatiquement le fichier /etc/sysconfig/iptables. Ce fichier est constitué de trois parties:
- un en-tête fixe, que je place dans le script en here-document,
- un corps constitué de plusieurs fichiers,
- une ligne finale contenant simplement "COMMIT"
La manière la plus élémentaire de produire ce fichier est donc de faire trois commandes:
Code:
1 2 3 4 5
| cat > /etc/sysconfig/iptables.new << EOF_IPTABLES
...
EOF_IPTABLES
cat fichier1 fichier2 >> /etc/sysconfig/iptables.new
echo "COMMIT" >> /etc/sysconfig/iptables.new |
Mais on peut aussi piper les commandes. Ici, je n'ai plus que deux accès au fichier:
Code:
1 2 3 4
| cat > /etc/sysconfig/iptables.new << EOF_IPTABLES
...
EOF_IPTABLES
echo "COMMIT" | cat fichier1 fichier2 - >> /etc/sysconfig/iptables.new |
Ma question est: Est-il possible d'aller plus loin (créer le fichier en une seule fois)? C'est un problème de redirection, qu'en pense notre expert N_BaH? Et les autres aussi bien sûr... Merci d'avance.