boucle!! - Shell/Batch - Programmation
Marsh Posté le 10-03-2006 à 10:52:22
Merci matafan! J'ais essayer comme cela, mais toujours pas de données en colonnes! est ce la bonne methode ?
#!/bin/bash
# Sort tous les champs et leurs noms
awk 'BEGIN {FS=","}
NR==4 { for (i=1;i<=NF;i++) {
print i "\t" $i} }'< 050501_050831_Guadeloup.dubovikcom > champs.txt
# Saute 4 lignes
# Parcours tous les champs...
for file in 050501_050831_Guadeloup
do
rm -f ${file}.out
sed "1,4d" ${file}.dubovikcom | awk ' BEGIN {
FS="," }
{ for (k=73;k<=94;k++)
{
print echo $k } }
' > ${file}.out
done
Marsh Posté le 10-03-2006 à 15:26:04
Pardon, je n'avais pas vu que c'était du awk. Tu peux utiliser printf("%s ", $k) au lieu de print $k. Ca évitera de retourner à la ligne à chaque fois.
Marsh Posté le 13-03-2006 à 10:07:28
salut! quand je fais ce que tu me dis de faire, le code me génère une seule colonne, en fait il me les met bout a bout!
Marsh Posté le 09-03-2006 à 15:50:47
salut! lors du dernier print j'aimerais faire une boucle mais je n'y arrive pas! en fait si j'y arrive mais les donnees s'affiche a la suite ( elles ne sont plus rangée par colonne!) Comment faire svp ?
#!/bin/bash
# Sort tous les champs et leurs noms
awk 'BEGIN {FS=","}
NR==4 { for (i=1;i<=NF;i++) {
print i "\t" $i} }'< 050501_050831_Guadeloup.dubovikcom > champs.txt
# Saute 4 lignes
# Parcours tous les champs...
for file in 050501_050831_Guadeloup
do
rm -f ${file}.out
sed "1,4d" ${file}.dubovikcom | awk ' BEGIN {
FS="," }
{
print $73 " " $74 " " \
$75 " " $76 " " $77 " " $78 " " $79 " " $80 " " $81 " " \
$82 " " $83 " " $84 " " $85 " " $86 " " $87 " " $88 " " $89 " " \
$90 " " $91 " " $92 " " $93 " " $94 }
' > ${file}.out
done