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
A voir également:
- Concaténation d'un fichier, n fois en Ksh
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
18 réponses
Salut,
lami20j
# 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!
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
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é.
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"
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"
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
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
count=1
while [ $count -ne $NBDOC ]
do
#cat $NCFICOBJI >> $Temp
echo $count
count="$(($count + 1))"
done
avec NBDOC à 3 ça m'affiche :
1
2
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
:-))
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
:-))