A voir également:
- Quels sont les deux derniers caractères de votre nom
- Caractères spéciaux - Guide
- Nombre de jours entre deux dates excel - Guide
- Comment faire deux colonnes sur word - Guide
- Caracteres speciaux - Guide
- Deux ecran pc - Guide
7 réponses
Hello,
OK , je cherche ici les 4 derniers caractères du fichier.
Ceci doidevrait te convenir
[johand@zoot] ~ $filename=un_fichier
[johand@zoot] ~ $echo $filename|rev| cut -b 1-4|rev
[johand@zoot] ~ $echo $filename|rev| cut -b 1-4|rev
hier
Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
OK , je cherche ici les 4 derniers caractères du fichier.
Ceci doidevrait te convenir
[johand@zoot] ~ $filename=un_fichier
[johand@zoot] ~ $echo $filename|rev| cut -b 1-4|rev
[johand@zoot] ~ $echo $filename|rev| cut -b 1-4|rev
hier
Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
soit le nom de fichier /rep1/rep2/rep3/abcdefghFA.sh
basename "/rep1/rep2/rep3/abcdefghFA.sh" ".sh"|rev|cut -c 1,4|rev
detail: basename ne garde que le nom du fichier (enlève les repertoires contrairement à dirname) et ici on lui demande aussi d'enlever l'extension ".sh", puis on retourne la chaine (rev), on coupe les premiers caracteres souhaités, puis on retourne la chaine dans le bon sens.
basename "/rep1/rep2/rep3/abcdefghFA.sh" ".sh"|rev|cut -c 1,4|rev
detail: basename ne garde que le nom du fichier (enlève les repertoires contrairement à dirname) et ici on lui demande aussi d'enlever l'extension ".sh", puis on retourne la chaine (rev), on coupe les premiers caracteres souhaités, puis on retourne la chaine dans le bon sens.
Salut
Tu fais le total de caractères que contient ton fichier, puis tu les range dans un tableau, puis tu prend les 4 dernières cases de ton tableau .
;))
Voili voilou ! :))
Tu fais le total de caractères que contient ton fichier, puis tu les range dans un tableau, puis tu prend les 4 dernières cases de ton tableau .
;))
Voili voilou ! :))
Tu devrais facilement y arriver en combinant adroitemement deux ou trois commandes unix tail, sed, grep ou awk . Par exemple :
tail -1 file | awk '{print /....$/}'
(mais je n'ai pas la possibilité de le tester ici) et le tour est joué !
:,§_ ç _
(@)=(@)
tail -1 file | awk '{print /....$/}'
(mais je n'ai pas la possibilité de le tester ici) et le tour est joué !
:,§_ ç _
(@)=(@)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Hello, tu peux t'amuser avec quelques pipes
tail -1 myfile |rev |cut -b 1-4|rev
Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
tail -1 myfile |rev |cut -b 1-4|rev
Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
Ah loic, je vois pourquoi on m'a bloqué ma réponse sur le forum programmation: c'ets que tuavais demandé deux fois presque le même chose de deux côtés. j'ai perdu le long texte que je t'avais pondu dans l'affaire, du temps précieux perdu, je vais essayer de t'aider avec ceci:
tu tapes un truc du genre
ls | awk {print substr($0,length($0)-3)}
Je proposais aux lecteurs un petit exercice de programmation sous DOS:
Comment extraire l'extension des noms de fichiers dans un répertoire ?
Je propose d'aller chercher deux outils unix compilés pour les PCs en DOS : gsed205b.zip sur http://www.simtel.net/pub/pd/37207.html et awk320.zip sur
http://www.simtel.net/pub/pd/51371.html
Je propose ces deux lignes
dir /b | sed s/[^\.]*\.//g
Mais il donne le nom complet s'il n'y a pas de point dans le nom, alors
dir /b | awk "{match($0,/\./); if (RSTART>0) {print substr($0,RSTART+1)}"
Quelqu'un a plus court ?
:,§_ ç _
(@)=(@)
tu tapes un truc du genre
ls | awk {print substr($0,length($0)-3)}
Je proposais aux lecteurs un petit exercice de programmation sous DOS:
Comment extraire l'extension des noms de fichiers dans un répertoire ?
Je propose d'aller chercher deux outils unix compilés pour les PCs en DOS : gsed205b.zip sur http://www.simtel.net/pub/pd/37207.html et awk320.zip sur
http://www.simtel.net/pub/pd/51371.html
Je propose ces deux lignes
dir /b | sed s/[^\.]*\.//g
Mais il donne le nom complet s'il n'y a pas de point dans le nom, alors
dir /b | awk "{match($0,/\./); if (RSTART>0) {print substr($0,RSTART+1)}"
Quelqu'un a plus court ?
:,§_ ç _
(@)=(@)