dans mes lointains souvenirs, ça se règle souvent à grands coups de
"here doc".
Exemple (sans test, hein, à adapter) :
Tu as un répertoire X avec 3 fichiers A, B et C
Tu fais un "tar cf Temp.tar X", suivi d'un "compress Temp.tar".
Tu as maintenant un fichier "Temp.tar.Z" qui contient ton répertoire compressé.
Tu fais un script Install.sh contenant quelquechose comme
"cat << LA_FIN | uncompress | tar xf - "
Puis tu fais un "cat Temp.tar.Z >> Install.sh
Puis tu ajoutes en fin de script, sur la première ligne après les données binaires venant de ton Temp.tar.Z "LA_FIN"
Il faut sans doute utiliser d'autres commandes au passage pour des problèmes d'encodage, ton script devant être de l'ascii...
Evidemment, compress / uncompress et tar peuvent être remplacés par du zip, bzip, ..., et "LA_FIN" est un mot clé dont le choix est libre, mais qui ne doit pas pouvoir se trouver dans les données que tu veux extraire.
# Pour les scripts,
Posté par Christophe Chailloleau-Leclerc . En réponse au message autoextractible : théorie. Évalué à 2.
"here doc".
Exemple (sans test, hein, à adapter) :
Tu as un répertoire X avec 3 fichiers A, B et C
Tu fais un "tar cf Temp.tar X", suivi d'un "compress Temp.tar".
Tu as maintenant un fichier "Temp.tar.Z" qui contient ton répertoire compressé.
Tu fais un script Install.sh contenant quelquechose comme
"cat << LA_FIN | uncompress | tar xf - "
Puis tu fais un "cat Temp.tar.Z >> Install.sh
Puis tu ajoutes en fin de script, sur la première ligne après les données binaires venant de ton Temp.tar.Z "LA_FIN"
Il faut sans doute utiliser d'autres commandes au passage pour des problèmes d'encodage, ton script devant être de l'ascii...
Evidemment, compress / uncompress et tar peuvent être remplacés par du zip, bzip, ..., et "LA_FIN" est un mot clé dont le choix est libre, mais qui ne doit pas pouvoir se trouver dans les données que tu veux extraire.
Bonne chance.