Concaténation d'un fichier, n fois en Ksh
Résolu
ferrari75k
-
ferrari75k -
ferrari75k -
Bonjour,
j'ai besoin de votre aide. J'aimerais faire un programme qui me concatene 1 fichier n fois, mais je n'y arrive pas . voici ce que j'ai fais :
NB= nombre de fois ou le fichier doit etre concatener
count=1
While [ $count -ne $NB ]
do
if [ $count -eq 1 ]
then
cat $OBJETSOURCE > $Temp
count="$(($count + 1))"
else
cat $OBJETSOURCE $Temp > $OBJETCIBLE
echo $count
count="$(($count + 1))"
fi
si quelqu'un peux m'aider ça serai vraiment gentil
Merci d'avance
j'ai besoin de votre aide. J'aimerais faire un programme qui me concatene 1 fichier n fois, mais je n'y arrive pas . voici ce que j'ai fais :
NB= nombre de fois ou le fichier doit etre concatener
count=1
While [ $count -ne $NB ]
do
if [ $count -eq 1 ]
then
cat $OBJETSOURCE > $Temp
count="$(($count + 1))"
else
cat $OBJETSOURCE $Temp > $OBJETCIBLE
echo $count
count="$(($count + 1))"
fi
si quelqu'un peux m'aider ça serai vraiment gentil
Merci d'avance
18 réponses
-
Salut,
# cat a ligne1 # for i in $(seq 10);do cat a>>temp.txt;done # cat a ligne1 # cat temp.txt ligne1 ligne1 ligne1 ligne1 ligne1 ligne1 ligne1 ligne1 ligne1 ligne1 #
--
lami20j -
et avec >> :
count=1 While [ $count -ne $NB ] do cat $OBJETSOURCE >> $Temp count="$(($count + 1))" echo $count done
-
Merci pour ta réponse,
J'ai une erreur : Erreur de syntaxe : do imprevu!
pourtant le code me semble correct! -
Le problème de while résolu mais à l'éxecution dans le console ça m'écrit des choses à l'infini j'ai du l'arrêter avec CTRL+C, Vous avez une idée du problème?
Merci -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Vous avez une idée du problème?
Peut être qu'on trouveras si tu nous affiche la commande que tu as tapé. -
Merci beaucoup
en executant ce programme de dubcek avec ./GenPDF2.ksh j'ai une boucle infini dans le console
NCFICOBJI = Objet à concatener n fois
count=1
while [ $count -ne $NBDOC ]
do
cat $NCFICOBJI >> $Temp
count="$(($count + 1))"
echo $count
done
sinon en executant le programme que tu viens de proposer j'ai "seq: introuvable" -
Salut,
A tout hasard, est-ce que "$NBDOC" est défini au moins ?
;-)) -
Merci pour ta réponse, Oui $NBDOC est défini je le récupere à partir d'un fichier txt et je l'affiche avant d'écrire le script de concaténation et ça m'affiche le bon valeur
-
Alors essaye :
while [ $count -le $NBDOC ]
;-))
-
je viens de tester, ça me fait une boucle infini :((, le problème viens de la commande cat puisque quand j'execute le script sans la commande cat :
count=1
while [ $count -ne $NBDOC ]
do
#cat $NCFICOBJI >> $Temp
echo $count
count="$(($count + 1))"
done
avec NBDOC à 3 ça m'affiche :
1
2 -
Euh... il est gros ton fichier ?
Insère une pause (sleep)...
-
la taille du fichier est 1,22 Mo (1 283 379 octets), comment je peux inserer une pause, enfaite je dois pouvoir le faire pour n'importe quelle fichier n fois, n peux etre tres grande :(( , genre 1millions :((((((((((((((((((((((((( mais même pour 2 fois ça marche pas, je viens de tester avec un objet plus petit 183 KB ça marche pas, le problème n'est pas la taille de l'objet :(
-
Essaye comme ça alors :
integer NBDOC=3 integer count=1 while ((count<=NBDOC)) do cat $NCFICOBJI >> $Temp echo $count let count=count+1 done
;-))
-
c'est exactement parreil, :((( ça me fait la même chose, quand vous essayez de le faire chez vous ça marche??
-
Merci pour vos propositions je repasserai cette après midi pour voir si vous avez d'autres script à me proposer
-
Merci de vos réponse je viens de tester avec ça :
count=0
while [ $count -ne $NB ]
do
cat $OBJETSOURCE >> $OBJETCIBLE
echo $count
count="$(($count + 1))"
done
et ça marche, je ne sais pas pourquoi ça marchait pas avant j'ai peut être fait une connerie :p
:-)) -
Happy for you ;-))
-