[cat/grep] trouver texte dans un fichier
[cat/grep] trouver texte dans un fichier
Bonjour,
J'ai besoin d'aide, je fais un script pour automatiser les couleurs de fonds d'écran, etc, je me base sur mes fichiers de couleurs .Xresources, donc j'ai pris :
color=$(cat .Xresources | awk '/\*background:/ {print $2}')
Le problème c'est que des fois je me retrouve avec
*.background,
des fois
*background
Et il y a également des tabulations, enfin tout est différent, je pourrais avoir un peu d'aide pour essayer de faire le truc le plus universel possible ?
Merci
J'ai besoin d'aide, je fais un script pour automatiser les couleurs de fonds d'écran, etc, je me base sur mes fichiers de couleurs .Xresources, donc j'ai pris :
color=$(cat .Xresources | awk '/\*background:/ {print $2}')
Le problème c'est que des fois je me retrouve avec
*.background,
des fois
*background
Et il y a également des tabulations, enfin tout est différent, je pourrais avoir un peu d'aide pour essayer de faire le truc le plus universel possible ?
Merci
-
- Chu Ko Nu
- Messages : 404
- Inscription : dim. 19 juin 2011, 18:53
- Localisation : dans le neuf trois
Re: [cat/grep] trouver texte dans un fichier
Le résultat de
permettra d'y voir plus clair
Code : Tout sélectionner
awk '/\*background:/ {print}' ~/.Xresources
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [cat/grep] trouver texte dans un fichier
Salut,
Tu as plus intérêt à parser la sortie de
Du coup avec awk ça doit le faire...
Et par conséquent tu peux filtrer davatange (
Tu as plus intérêt à parser la sortie de
xrdb -query -all
je pense...Du coup avec awk ça doit le faire...
Code : Tout sélectionner
xrdb -query -all | awk '/\*background:/ {print $2}'
xterm*background
?).«The following statement is not true. The previous statement is true.»
Re: [cat/grep] trouver texte dans un fichier
Oh effectivement ça a l'air bien plus pratique, ça fonctionne aussi avec le include du xresources ?
Pour le xterm*background j'imagine que tu veux dire de le mettre à la place de background après le awk, mais je n'ai pas xterm dans mes fichiers xresources/couleurs
Pour le xterm*background j'imagine que tu veux dire de le mettre à la place de background après le awk, mais je n'ai pas xterm dans mes fichiers xresources/couleurs
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [cat/grep] trouver texte dans un fichier
Oui. x_resources
«The following statement is not true. The previous statement is true.»
Re: [cat/grep] trouver texte dans un fichier
Donc si je comprends bien, il charge en memoire les fichiers de configuration, même les fichiers compris dans include, et xrdb -query -all m'affiche ce qu'il a chargé
J'utilise xrdb -load, il vaut mieux -merge ?
Par contre vu que mes couleurs ne sont pas uniformisés dans les fichiers, j'ai des tabulations dans certains fichiers, d'autres non, il y a un moyen de modifier le awk ? Ou je dois uniformiser mes fichiers
J'utilise xrdb -load, il vaut mieux -merge ?
Par contre vu que mes couleurs ne sont pas uniformisés dans les fichiers, j'ai des tabulations dans certains fichiers, d'autres non, il y a un moyen de modifier le awk ? Ou je dois uniformiser mes fichiers
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [cat/grep] trouver texte dans un fichier
Pour moi, tu n'as besoin de te fier qu'à la sortie du query.
«The following statement is not true. The previous statement is true.»
Re: [cat/grep] trouver texte dans un fichier
Oui mais le query prends comme dans le fichier de config, donc les espaces et tabulations sont pareilles que dans les fichiers donc avec awk sur certains fichiers j'ai un résultat vide
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [cat/grep] trouver texte dans un fichier
Compte tenu de la nature de ces fichiers, je pense qu'il est dangereux d'utiliser des espaces comme séparateur (on retrouve parfois des commandes avec argument). Mieux vaudrait aligner tes fichiers de manière à bien avoir les colonnes séparées par des tabulations. Ou ne pas passer par awk mais plus jouer avec du grep|sed et cut (mais ça devient vite illisible).
«The following statement is not true. The previous statement is true.»
Re: [cat/grep] trouver texte dans un fichier
Donc tu me conseille de mettre des tabulations uniquement, à la place des espaces ?