Travailler sur un fichier.txt
samsoul92
Messages postés
6
Statut
Membre
-
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je souhaiterais savoir si quelqu'un peu m'aider dans la réalisation d'un script, permettant de travailler sur un fichier.txt
fichier.txt:
-----------------------------------------------------------------------------
/apps/infocentre/unicenterDSI/dwhexeloa/jcl::/usr/bin/X11:/usr/bin:/etc:/usr/sbin:/usr/ucb/sbin:/usr/java131/jre/bin:/usr/java131/bin:/var/ifor:/usr/opt/ifor/ls/conf:/usr/opt/ifor/ls/os/aix/bin:/usr/ecc/e/usr/bin:/etc:/usr/sbin:/usr/ucbxec:/apps/unicenter/EM/3.1/bin:/apps/unicenter/EM/3.1/cadb/system:/apps/unicenter/EM/3.1/gui/bin:/apps/unicenter/EM/3.1/scripts:/apps/Ca_Shared_Components/bin:/apps/unicenter/EM/3.1/snmp/bin:/apps/unicenter/EM/3.1/tape/scripts:/apps/unicenter/EM/3.1/tape/bin/:/opt/CA/dmscript/bin:/apps/unicenter/AT/3.1/services/bin:/apps/unicenter/AT/3.1/services/tools:/apps/unicenter/AT/3.1/agents/bin:/apps/sys/unicenter/exploitation
___________________________________________________________________
Comme vous pouvez le voir il y a un separateur ":"
comment je faire pour que ce fichier s'affiche comme tel:
NewFichier.txt:
----------------------------------------------------------------
/apps/infocentre/unicenterDSI/dwhexeloa/jcl
/usr/bin
/etc
/usr/sbin
/usr/ucb
/usr/bin/X11
/sbin
/usr/java131/jre/bin
/usr/java131/bin
/var/ifor
/usr/opt/ifor/ls/conf
/usr/opt/ifor/ls/os/aix/bin
-----------------
-----------------
----------------
/apps/sys/unicenter/exploitation
--------------------------------------------------------
C'est a dire qu'a chaque ":" il fait un saut de ligne "\n"
Merci par avance de votre aide?
Cdlt
Je souhaiterais savoir si quelqu'un peu m'aider dans la réalisation d'un script, permettant de travailler sur un fichier.txt
fichier.txt:
-----------------------------------------------------------------------------
/apps/infocentre/unicenterDSI/dwhexeloa/jcl::/usr/bin/X11:/usr/bin:/etc:/usr/sbin:/usr/ucb/sbin:/usr/java131/jre/bin:/usr/java131/bin:/var/ifor:/usr/opt/ifor/ls/conf:/usr/opt/ifor/ls/os/aix/bin:/usr/ecc/e/usr/bin:/etc:/usr/sbin:/usr/ucbxec:/apps/unicenter/EM/3.1/bin:/apps/unicenter/EM/3.1/cadb/system:/apps/unicenter/EM/3.1/gui/bin:/apps/unicenter/EM/3.1/scripts:/apps/Ca_Shared_Components/bin:/apps/unicenter/EM/3.1/snmp/bin:/apps/unicenter/EM/3.1/tape/scripts:/apps/unicenter/EM/3.1/tape/bin/:/opt/CA/dmscript/bin:/apps/unicenter/AT/3.1/services/bin:/apps/unicenter/AT/3.1/services/tools:/apps/unicenter/AT/3.1/agents/bin:/apps/sys/unicenter/exploitation
___________________________________________________________________
Comme vous pouvez le voir il y a un separateur ":"
comment je faire pour que ce fichier s'affiche comme tel:
NewFichier.txt:
----------------------------------------------------------------
/apps/infocentre/unicenterDSI/dwhexeloa/jcl
/usr/bin
/etc
/usr/sbin
/usr/ucb
/usr/bin/X11
/sbin
/usr/java131/jre/bin
/usr/java131/bin
/var/ifor
/usr/opt/ifor/ls/conf
/usr/opt/ifor/ls/os/aix/bin
-----------------
-----------------
----------------
/apps/sys/unicenter/exploitation
--------------------------------------------------------
C'est a dire qu'a chaque ":" il fait un saut de ligne "\n"
Merci par avance de votre aide?
Cdlt
A voir également:
- Travailler sur un fichier.txt
- Comment travailler sur 2 écrans - Guide
- Peut on utiliser un pc gamer pour travailler - Forum Matériel & Système
- Travailler en 2x7 - Forum Vos droits sur internet
- Exemplaire d'un tfc déjà travaillé - Forum Bases de données
- Qui est l'auteur du fichier.txt ✓ - Forum Programmation
2 réponses
sed -e 's/:/\n/g' fichier.txt > nouveau_fichier.txt
Voir par exemple: sed, a stream editor
Gates gave ^W sold you the windows.
GNU gave us the whole house.(Alexandrin)
Ou plus simplement : Introduction à sed ;-)
Elle ne fait que remplacer le ":" par "n",
Je pense qu'il faut faire une boucle
T'es sûr ?
Tu peux voir que cela ne fonctionne pas:
PARVA4000627 => PROD ATLAS 2 ANTILLES - GUYANE SFDI (l348902)
/home/l348902$ sed 's/:/\n/g' fichier.txt
/apps/exploit/outilsiten/apps/atlas/atlas2v0/uf1/site/outilsn/apps/atlas/atlas2v0/uf1/site/jcln/apps/atlas/atlas2v0/uf1/site/jobsetn/apps/cft/fildat/../ifcftn/home/atlasn/apps/convert/jclsiten/apps/convert/jcln/apps/convert/jobsetn/apps/orion/031/uf1/site/jcln/apps/orion/031/uf1/site/jobsetn/apps/orion/031/uf1/jobsetsiten/apps/orion/031/uf1/jclsiten/apps/orion/031/uf1/jcln/apps/orion/031/uf1/jobsetn/apps/ptcom/015/uf1/site/jcln/apps/ptcom/015/uf1/site/jobsetn/apps/ptcom/015/uf1/jobsetsiten/apps/ptcom/015/uf1/jclsiten/apps/ptcom/015/uf1/jcln/apps/ptcom/015/uf1/jobsetn/apps/basfi/020/uf1/site/jcln/apps/basfi/020/uf1/site/jobsetn/apps/basfi/020/uf1/jobsetsiten/apps/basfi/020/uf1/jclsiten/apps/basfi/020/uf1/jcln/apps/basfi/020/uf1/jobsetn/apps/evatl/003/uf1/site/jcln/apps/evatl/003/uf1/site/jobsetn/apps/evatl/003/uf1/jobsetsiten/apps/evatl/003/uf1/jclsiten/apps/evatl/003/uf1/jcln/apps/evatl/003/uf1/jobsetn/apps/sonar/020/uf1/site/jcln/apps/sonar/020/uf1/site/jobsetn/apps/sonar/020/uf1/jobsetsiten/apps/sonar/020/uf1/jclsiten/apps/sonar/020/uf1/jcln/apps/sonar/020/uf1/jobsetn/apps/atlas/atlas2v0/uf1/site/outilsn/apps/atlas/atlas2v0/uf1/site/jcln/apps/atlas/atlas2v0/uf1/site/jobsetn/apps/atlas/atlas2v0/uf1/jobsetn/apps/atlas/atlas2v0/uf1/jclsiten/apps/atlas/atlas2v0/uf1/jcln/apps/exploit/outilsoran/apps/exploit/outilsn/apps/exploit/exploitv3n/usr/binn/etcn/usr/sbinn/usr/ucbn/usr/bin/X11n/sbinn/usr/java131/jre/binn/usr/java131/binn/apps/unicenter/EM/3.1/binn/apps/unicenter/EM/3.1/cadb/systemn/apps/unicenter/EM/3.1/gui/binn/apps/unicenter/EM/3.1/scriptsn/apps/unicenter/EM/3.1/snmp/binn/apps/unicenter/EM/3.1/tape/scriptsn/apps/unicenter/EM/3.1/tape/bin/n/apps/exploit/outils/webkixn/apps/amelia/outilsn/apps/exploit/tngn/apps/exploit/outils/livraisonsn/apps/atlas/atlas2v0/uf1/tipsbinn/apps/atlas/atlas2v0/uf1/scriptsn/apps/oracle/product/920/binn/apps/xrdj/v1.1/RM_fil//binn/apps/xrdj/v1.1/RM_fil//confn/usr/includen/usr/include/sysn/apps/syncsort/3.11/binn/apps/cobol/sx4.0/binn/apps/unikix/t8.1.0p11n/apps/unikix/t8.1.0p11/binn/apps/unikix/t8.1.0p11/kixcli/binn/apps/webkix/webcli/binn/usr/java14/jre/binn/usr/java14/binn.n/apps/cft/filexen/apps/cft/filusrn/apps/cft/filexitn/apps/cft/filapin/apps/exploit/shelln/apps/exploit/shell/gestion
Par contre vi la commande ci-dessous ca a l'air d'etre correct:
PARVA4000627 => PROD ATLAS 2 ANTILLES - GUYANE SFDI (l348902)
/home/l348902$ tr ":" "\n" < patern.txt
/apps/exploit/outilsite
/apps/atlas/atlas2v0/uf1/site/outils
/apps/atlas/atlas2v0/uf1/site/jcl
/apps/atlas/atlas2v0/uf1/site/jobset
/apps/cft/fildat/../ifcft
/home/atlas
/apps/convert/jclsite
/apps/convert/jcl
/apps/convert/jobset
/apps/orion/031/uf1/site/jcl
/apps/orion/031/uf1/site/jobset
/apps/orion/031/uf1/jobsetsite
/apps/orion/031/uf1/jclsite
/apps/orion/031/uf1/jcl
/apps/orion/031/uf1/jobset
/apps/ptcom/015/uf1/site/jcl
/apps/ptcom/015/uf1/site/jobset
/apps/ptcom/015/uf1/jobsetsite
/apps/ptcom/015/uf1/jclsite
/apps/ptcom/015/uf1/jcl
/apps/ptcom/015/uf1/jobset
/apps/basfi/020/uf1/site/jcl
/apps/basfi/020/uf1/site/jobset
/apps/basfi/020/uf1/jobsetsite
/apps/basfi/020/uf1/jclsite
/apps/basfi/020/uf1/jcl
/apps/basfi/020/uf1/jobset
/apps/evatl/003/uf1/site/jcl
/apps/evatl/003/uf1/site/jobset
/apps/evatl/003/uf1/jobsetsite
/apps/evatl/003/uf1/jclsite
/apps/evatl/003/uf1/jcl
/apps/evatl/003/uf1/jobset
/apps/sonar/020/uf1/site/jcl
/apps/sonar/020/uf1/site/jobset
/apps/sonar/020/uf1/jobsetsite
/apps/sonar/020/uf1/jclsite
/apps/sonar/020/uf1/jcl
/apps/sonar/020/uf1/jobset
/apps/atlas/atlas2v0/uf1/site/outils
/apps/atlas/atlas2v0/uf1/site/jcl
/apps/atlas/atlas2v0/uf1/site/jobset
/apps/atlas/atlas2v0/uf1/jobset
/apps/atlas/atlas2v0/uf1/jclsite
/apps/atlas/atlas2v0/uf1/jcl
/apps/exploit/outilsora
/apps/exploit/outils
/apps/exploit/exploitv3
/usr/bin
/etc
/usr/sbin
/usr/ucb
/usr/bin/X11
/sbin
/usr/java131/jre/bin
/usr/java131/bin
/apps/unicenter/EM/3.1/bin
/apps/unicenter/EM/3.1/cadb/system
/apps/unicenter/EM/3.1/gui/bin
/apps/unicenter/EM/3.1/scripts
/apps/unicenter/EM/3.1/snmp/bin
/apps/unicenter/EM/3.1/tape/scripts
/apps/unicenter/EM/3.1/tape/bin/
/apps/exploit/outils/webkix
/apps/amelia/outils
/apps/exploit/tng
/apps/exploit/outils/livraisons
/apps/atlas/atlas2v0/uf1/tipsbin
/apps/atlas/atlas2v0/uf1/scripts
/apps/oracle/product/920/bin
/apps/xrdj/v1.1/RM_fil//bin
/apps/xrdj/v1.1/RM_fil//conf
/usr/include
/usr/include/sys
/apps/syncsort/3.11/bin
/apps/cobol/sx4.0/bin
/apps/unikix/t8.1.0p11
/apps/unikix/t8.1.0p11/bin
/apps/unikix/t8.1.0p11/kixcli/bin
/apps/webkix/webcli/bin
/usr/java14/jre/bin
/usr/java14/bin
.
/apps/cft/filexe
/apps/cft/filusr
/apps/cft/filexit
/apps/cft/filapi
/apps/exploit/shell
/apps/exploit/shell/gestion
__________________________________________
Une autre facon de faire:
awk -F ":" '{ for(i=1;i<=NF;i++) { print $i; } }'
_____________________________________
ou encore:
OLDIFS=$IFS
IFS=":"
for ligne in $(cat patern.txt)
do
echo $ligne
done
IFS=$OLDIFS
Essaye avec :