Précédent   Forum des professionnels en informatique > Systèmes > Linux > Contribuez
Contribuez Vos contributions pour la rubrique Linux : articles, cours, tutoriels, faq, comparatifs, tests, sources, ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 20/06/2007, 11h41   #1
Invité régulier
 
Inscription : mai 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : mai 2007
Messages : 12
Points : 5
Points : 5
Par défaut [SED - AWK] Quelques commandes et scripts en vrac

Je poste ici quelques commandes et scripts en vrac (d'ou le nom )
je pourrais rajouter "pour debutant", ils sont facile a comprendre
(enfin j'espere). Si ca peut aider quelqu'un

#----------------------------------------------
#
# IMPORTANT : quelques une des commandes ne
# marche pas si le fichier a ete edité sous Window
# pour y remedier, appliquez dabord cette
# commande si une commande ne marche pas
# verifiez qu'il n'y a pas de "" ou [] inutiles
#
#----------------------------------------------
# Converti un fichier .txt Window pour Unix I
#----------------------------------------------


dos2unix [Fichier]


#----------------[ AWK ]-----------------


#----------------------------------------------
# compare dans un fichier un champ
# avec le suivant affiche si different
#----------------------------------------------


awk -F "separateur de champ" '$1 && !n[$1]++' [Fichier]


#----------------------------------------------
# Recherche si le deuxieme champ (separe par
# ":" est vide dans un texte
# Affiche la ligne suivit de ": [Vide]"
#----------------------------------------------


awk -F ":" ' {if ($2=="") {print $1 $2 ": [Vide]"}}' [Fichier]


#----------------------------------------------
# Concatenation ligne par ligne
# (comme avec la commande paste)
# !! les fichiers doivent avoir le meme
# nombre de ligne
#----------------------------------------------


awk '
{test [NR] = $0 }

END{
while ( i <= NR )
{
print test[i];
print test[i+NR/2]
i ++;
}
}
' [Premier fichier] [Deuxieme fichier]



#----------------[ SED ]-----------------


#----------------------------------------------
# Supprime les lignes contenant "truc"
#----------------------------------------------


sed '/"truc"/d' [Fichier]


#----------------------------------------------
# Supprime les lignes 1 et 2 du [fichier]
#----------------------------------------------


sed '1d ; 2d' [Fichier]


#----------------------------------------------
# Supprime les espaces en debut de ligne
#----------------------------------------------


sed -e "s/^ *//g" [Fichier]


#----------------------------------------------
# Suppression de l'intervalle compris entre
# "Debut" et "Fin"
#----------------------------------------------


sed '/"Debut"/,/"Fin"/d' [Fichier]


#----------------------------------------------
# Chercher remplacer dans un fichier
#----------------------------------------------


sed -i "s/"ce que l'on cherche"/"ce que l'on met a la place"/g" [Fichier]


#----------------------------------------------
# Suppression de la dernière ligne
#----------------------------------------------


sed '$d' [Fichier]


#----------------------------------------------
# Suppression de ligne vide d'un [Fichier]
#----------------------------------------------


sed '/./!d' [Fichier]
sed '/^$/d' [Fichier]



#----------------------------------------------
# Suppression de l'intervalle compris entre
# les lignes 1 et 4
#----------------------------------------------


sed '1,4d' [Fichier]



#----------------[ Petits scripts ]----------------
#
# Recopiez dans un fichier editer par vi
# Ne pas oubliez de donner les droits (chmod 755 par exemple)

#----------------------------------------------
# Supprime les fichiers non modifié depuis I
# [n] jours dans le [Chemin] specifie I
# util. : ./[Nom du script] [n] [Chemin] I
#----------------------------------------------


#!/bin/bash

if [ $# = 2 ]
then
find $2 -mtime +$1 -exec rm -f \{\} \;
echo "Suppression des fichiers depuis $1 jour(s)"
echo "dans $2"
else
echo "Utilisation : ./[Nom du script] [n] [Chemin]"
echo "Le script supprime les fichiers non modifies"
echo "depuis [n] jour(s) dans le [Chemin] specifie"
fi



#----------------------------------------------
# Backup - sauvegarde le [dossier cible]
# dans le repertoir courant en lui ajoutant
# la date
#----------------------------------------------

#!/bin/bash

if [ $# = 1 ]
then
VAR=`date +%Y-%m-%d`

tar cjfP archives-"$VAR" $1
echo "Archivage du dossier :"
echo "$1"
else
echo "Utilisation : ./[Nom du script] [dossier cible]"
echo "Le script archive le [dossier cible] dans"
echo "le repertoir courant en ajoutant la date"
fi



#----------------[ VRAC ]----------------


#---------------------------------------------
# Supprime dans le deuxieme fichier les I
# mots existants dans le premier I
#---------------------------------------------


diff [Premier fichier] [Deuxieme fichier] | grep ">" | sed s/\>// > [Sortie]


#----------------------------------------------
# Suppression des lignes blanches d'un fichier
#----------------------------------------------


grep -v "^\s*$" [Premier fichier] > [Sortie]


#---------------[ THE END ]----------------

Voili voilou
lordduck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2007, 22h05   #2
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 259
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 259
Points : 7 043
Points : 7 043
merci tres bien ce petit
astuces-topic

c'est sympa de partager.
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2007, 10h00   #3
Expert Confirmé
 
Avatar de Katyucha
 
Inscription : mars 2004
Messages : 3 053
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : mars 2004
Messages : 3 053
Points : 2 933
Points : 2 933
Avec ton accord, je te propose d'inclure tout ca dans la FAQ (Linux surement).

Evidemment, tu seras donné comme auteur

Qu'en penses tu ?
__________________
Ancien Rédacteur Linux && Unix / Nouveau retraité de DVP
The UNIX way of sex:
gunzip;strip;touch;finger;mount;fsck;more;yes;umount;sleep

Je ne réponds ni aux messages privées, ni aux messages plein de fautes...
Katyucha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2007, 10h11   #4
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Homme Nicolas Vallée
Ingénieur Système
Inscription : décembre 2005
Messages : 9 675
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Vallée
Âge : 27
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur Système
Secteur : Transports

Informations forums :
Inscription : décembre 2005
Messages : 9 675
Points : 14 290
Points : 14 290
Citation:
Envoyé par Katyucha
Evidemment, tu seras donné comme auteur

au passage, ce serait sans doute mieux de mettre un nom et non un pseudo pour les entrées de faq... si tu le souhaites, envoies-le par MP à un des modos linux
__________________
Evitez les MP pour les questions techniques... il y a des forums
Contributions sur DVP : Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2007, 13h51   #5
Invité régulier
 
Inscription : mai 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : mai 2007
Messages : 12
Points : 5
Points : 5
Avec plaisir
Mais pour les mises a jour ? je post ici ?
lordduck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2007, 13h57   #6
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Homme Nicolas Vallée
Ingénieur Système
Inscription : décembre 2005
Messages : 9 675
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Vallée
Âge : 27
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur Système
Secteur : Transports

Informations forums :
Inscription : décembre 2005
Messages : 9 675
Points : 14 290
Points : 14 290
éventuellement... sinon un MP a un des redac lvl 2 (plumes rouges) ou modo linux (étoiles rouges)
__________________
Evitez les MP pour les questions techniques... il y a des forums
Contributions sur DVP : Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2007, 14h09   #7
Invité régulier
 
Inscription : mai 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : mai 2007
Messages : 12
Points : 5
Points : 5
Daccord merci des precisions,
Disons que je pense ne pas etre le seul a garder des notes et petites commandes dans des blocs notes plus ou moins ordonnés alors ils pourraient se manifester ici par la suite
lordduck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2010, 01h51   #8
En attente de confirmation mail
 
aza39 aza39
Inscription : octobre 2008
Messages : 128
Détails du profil
Informations personnelles :
Nom : aza39 aza39

Informations forums :
Inscription : octobre 2008
Messages : 128
Points : 73
Points : 73
J'en ai trouvé d'autres ici http://devinux.com/recherche/command...se=all&limit=0
totoz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 21h08.


 
 
 
 
Partenaires

Hébergement Web