logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 21-10-2019 21:32:34

Anonyme
Invité

[Résolu]récupérer un bout de texte qui se trouve entre guillemets

Bonsoir,

dans un fichier texte, j'ai une information à récupérer mais qui se trouve entre guillemets.
Je n'y arrive pas.

xwininfo: Window id: 0x2800002 "ACCEPT - Princess Of The Dawn (2017).wav - mpv"



il me faudrait ça :

ACCEPT - Princess Of The Dawn (2017).wav - mpv



ou ça :

"ACCEPT - Princess Of The Dawn (2017).wav - mpv"




WINDOW=$(cat "$OUTPUT"/info.txt | awk .......




Merci par avance.

Dernière modification par Anonyme (22-10-2019 04:52:01)

#2 21-10-2019 21:48:46

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu]récupérer un bout de texte qui se trouve entre guillemets

Je pensais plus à sed que awk, un truc du genre :


sed -nE 's/^[^"]*"([^"]*)".*$/\1/p'
 



Tu me diras si ça marche.

EDIT: Ajout des ancres ^ et $.
EDIT2: Ajout de -n et du modificateur p pour n'afficher que lorsqu'on fait une substitution.

Dernière modification par enicar (21-10-2019 22:58:27)

Hors ligne

#3 21-10-2019 21:59:08

Anonyme
Invité

Re : [Résolu]récupérer un bout de texte qui se trouve entre guillemets

Bonsoir,

J'essaies ta solution et te dis de suite. Je viens de trouver un "truc" qui fonctionne sur un site.




Deepl :

Cela recherche la parenthèse d'ouverture, l'ignore, puis imprime tous les caractères qui suivent qui ne sont pas des parenthèses fermées.

 



EDIT: donc pourquoi pas pour le ""

Dernière modification par Anonyme (21-10-2019 22:03:04)

#4 21-10-2019 22:07:52

Anonyme
Invité

Re : [Résolu]récupérer un bout de texte qui se trouve entre guillemets

C'est bien comme ça qu'il faut le voir ? :

WINDOW=$(cat info.txt | sed -E 's/^[^"]*"([^"]*)".*$/\1/')



ça me pond ça :


xwininfo: Please select the window about which you would like information by clicking the mouse in that window. ACCEPT - Princess Of The Dawn (2017).wav - mpv Absolute upper-left X: 1941 Absolute upper-left Y: 88 Relative upper-left X: 1941 Relative upper-left Y: 88 Width: 900 Height: 576 Depth: 24 Visual: 0x27 Visual Class: TrueColor Border width: 0 Class: InputOutput Colormap: 0x2600001 (not installed) Bit Gravity State: ForgetGravity Window Gravity State: NorthWestGravity Backing Store State: NotUseful Save Under State: no Map State: IsViewable Override Redirect State: no Corners: +1941+88 -199+88 -199-386 +1941-386 -geometry 900x576+1941+88
 



C'est  bien trop long pour un titre big_smile


Moi, j'ai ça :


WINDOW=$(cat info.txt | grep -oP '\"\K[^"]+')
 



ACCEPT - Princess Of The Dawn (2017).wav - mpv

Dernière modification par Anonyme (21-10-2019 22:08:14)

#5 21-10-2019 22:50:30

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu]récupérer un bout de texte qui se trouve entre guillemets

Ma commande est erronée. J'ai pas envie de passer du temps là dessus aujourd'hui.

Hors ligne

#6 21-10-2019 22:56:32

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu]récupérer un bout de texte qui se trouve entre guillemets

En tous cas :


echo 'xwininfo: Window id: 0x2800002 "ACCEPT - Princess Of The Dawn (2017).wav - mpv"' |sed -nE 's/[^"]*"([^"]*)".*/\1/p'
 


renvoie bien que ce qu'il y a entre les ".

Hors ligne

#7 22-10-2019 04:51:36

Anonyme
Invité

Re : [Résolu]récupérer un bout de texte qui se trouve entre guillemets

enicar a écrit :

En tous cas :


echo 'xwininfo: Window id: 0x2800002 "ACCEPT - Princess Of The Dawn (2017).wav - mpv"' |sed -nE 's/[^"]*"([^"]*)".*/\1/p'
 


renvoie bien que ce qu'il y a entre les ".



Impeccable. smile

Merci.


Output #0, matroska, to '/home/patrick/MAGNETO/ACCEPT - Princess Of The Dawn (2017).mp4 - mpv-[Le 22-10-19 à 05:50:16].mkv':
  Metadata:
    title           : ACCEPT - Princess Of The Dawn (2017).mp4 - mpv
    encoder         : Lavf58.29.100
    Stream #0:0: Video: h264 (h264_nvenc) (High 4:4:4 Predictive), 1 reference frame (H264 / 0x34363248), yuv444p(progressive), 900x576, q=-1--1, 2000 kb/s, 30 fps, 1k tbn, 30 tbc
    Metadata:
      encoder         : Lavc58.54.100 h264_nvenc
    Side data:
      cpb: bitrate max/min/avg: 0/0/2000000 buffer size: 4000000 vbv_delay: -1
    Stream #0:1(fra): Audio: mp3 (libmp3lame) (U[0][0][0] / 0x0055), 48000 Hz, stereo, s16p, delay 1105
    Metadata:
      title           : MP3 2CH
      encoder         : Lavc58.54.100 libmp3lame

 

Dernière modification par Anonyme (22-10-2019 04:54:21)

Pied de page des forums