Hur få ut info från flera kommandon på samma gång?

Här diskuterar vi skal, kommandon och klassiska linuxverktyg.
Användarvisningsbild
cupe
Inlägg: 650
Blev medlem: 05 jun 2008, 07:10
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS

Hur få ut info från flera kommandon på samma gång?

Inlägg av cupe »

Försöker få ut information från flera kommandon genom att köra alla dessa på samma gång. Detta gäller då rhythmbox-client:

Kod: Markera allt

cupe@sara:~$ rhythmbox-client --no-start --print-playing-format %aa
Ane Brun
cupe@sara:~$ rhythmbox-client --no-start --print-playing-format %at
Spending Time With Morgan
cupe@sara:~$ 

Kod: Markera allt

cupe@sara:~$ rhythmbox-client --no-start --print-playing-format %at | rhythmbox-client --no-start --print-playing-format %aa
Ane Brun
cupe@sara:~$ 
Hur gör jag för att få ut information om båda dessa, på samma gång?

Edit: Jag måste alltså kunna köra rubbet som ETT kommando, för att kunnna skicka vidare det till X-buffern, annars hade det inte varit något problem.
Emil.s
Inlägg: 6633
Blev medlem: 12 dec 2006, 23:20
OS: Ubuntu
Ort: /Dalarna/Hedemora/
Kontakt:

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av Emil.s »

Kod: Markera allt

rhythmbox-client --no-start --print-playing-format %at && rhythmbox-client --no-start --print-playing-format %aa
?

Annars kan du ju göra ett script, och sen anropa det.
Home sweet ~/ = http://sandnabba.se
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av Konservburk »

Nu har jag iofs aldrig använt rhythmbox-client, men borde man inte kunna få ut all info med en gång?

Kod: Markera allt

rhythmbox-client --no-start --print-playing-format "%aa\n%at"
Men för att svara på den egentliga frågan, du kan t.ex. göra så här:

Kod: Markera allt

{
rhythmbox-client --no-start --print-playing-format %aa
rhythmbox-client --no-start --print-playing-format %at
} |
kommandot_du_vill_skicka_utdatan_till
Användarvisningsbild
cupe
Inlägg: 650
Blev medlem: 05 jun 2008, 07:10
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av cupe »

Jag var tvungen att ha det på samma rad, det löste sig med:

Kod: Markera allt

rhythmbox-client --no-start --print-playing-format "Nu spelas: %aa - %at - %tt" | xclip
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av Konservburk »

Klarar inte xclip av nyrader? Det hade jag för mig att den gjorde.
Användarvisningsbild
cupe
Inlägg: 650
Blev medlem: 05 jun 2008, 07:10
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av cupe »

Konservburk skrev:Klarar inte xclip av nyrader? Det hade jag för mig att den gjorde.
Jag har då icke lyckats. Vad menar du med nyrader? \n ?
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av Konservburk »

cupe skrev:Jag har då icke lyckats. Vad menar du med nyrader? \n ?
Med nyrader menar jag att du skickar fler än en rad till xclip, typ så här:

Kod: Markera allt

printf 'hej\nsan\n' | xclip
...och att alla raderna faktiskt kommer med, så att när du sedan klistrar in så får du:

Kod: Markera allt

hej
san
beow
Inlägg: 44
Blev medlem: 05 jun 2006, 16:13
OS: Xubuntu

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av beow »

Testa

Kod: Markera allt

echo -n `rhythmbox-client --no-start --print-playing-format %aa` && echo -n " - " && echo `rhythmbox-client --no-start --print-playing-format %at`
"-n" undertrycker nyrad.

Exempel:

$ echo -n `rhythmbox-client --no-start --print-playing-format %aa` && echo -n " - " && echo `rhythmbox-client --no-start --print-playing-format %at`
Pugh Rogefeldt - Absolute Svensk Rock Classics
Användarvisningsbild
HOLMEN
Fadder
Inlägg: 1724
Blev medlem: 29 mar 2006, 22:39
OS: Ubuntu
Utgåva: Vet inte/ingen utgåva passar
Ort: Göteborg
Kontakt:

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av HOLMEN »

Toppen att jag hittade detta precis då jag håller på med ett syncscript för min och tjejens mobil.

Vi ska föra över våra bilder till datorn när man kör scriptet och jag vill kategorisera dem.

Kan man på något vis göra något som liknar detta?:

Kod: Markera allt

cd Bilder/date +%Y
Det ska ju alltså bli cd Bilder/2008, men det verkar inte kunna kombineras på det vis jag vill.

Kod: Markera allt

cd Bilder/'date +%Y'
Går inte heller.

Någon som vet?
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av Konservburk »

HOLMEN skrev:Kan man på något vis göra något som liknar detta?:

Kod: Markera allt

cd Bilder/date +%Y
Det ska ju alltså bli cd Bilder/2008, men det verkar inte kunna kombineras på det vis jag vill.

Kod: Markera allt

cd Bilder/'date +%Y'
Går inte heller.

Kod: Markera allt

cd Bilder/$(date +%Y)
Användarvisningsbild
HOLMEN
Fadder
Inlägg: 1724
Blev medlem: 29 mar 2006, 22:39
OS: Ubuntu
Utgåva: Vet inte/ingen utgåva passar
Ort: Göteborg
Kontakt:

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av HOLMEN »

Underbart, TACK!
David Andersson
Inlägg: 1269
Blev medlem: 15 dec 2007, 03:20
OS: Xubuntu

Re: Hur få ut info från flera kommandon på samma gång?

Inlägg av David Andersson »

cupe skrev:Försöker få ut information från flera kommandon genom att köra alla dessa på samma gång. Detta gäller då rhythmbox-client:

Kod: Markera allt

cupe@sara:~$ rhythmbox-client --no-start --print-playing-format %aa
Ane Brun
cupe@sara:~$ rhythmbox-client --no-start --print-playing-format %at
Spending Time With Morgan
cupe@sara:~$ 
&& och ;

Som andra har svarat, du kan ha flera kommandon med && mellan (kommando1 && kommando2 && kommando3), så utförs de i ordning. Det går också med semikolon (kommando1; kommando2; kommando3). (Skillnaden är att med && så körs inte efterföljande kommandon om ett kommando misslyckas. Det är väldigt viktigt ibland, men inte här.)

rhythmbox-client

I det här fallet så kan du faktiskt använda kraftfullheten i --print-playing-format så räcker det med ett kommando. Skriv så här i stället:

Kod: Markera allt

cupe@sara:~$ rhythmbox-client --no-start --print-playing-format "%aa - %at"
Ane Brun - Spending Time With Morgan
cupe@sara:~$ 
Skriv svar

Återgå till "Terminalforum"