Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/03/2010, à 12:24

p6s

AT et scripts...

Hello.

un ptit coup dans le man de la commande at m'indique que je dois faire at -f si je veux lancer un script à un moment donné.
du coup je fais un at -f recarte.sh now + 1 minute
(pour tester)
le dit script étant :
vlc rtp://@232.0.1.202:8200 --sout file/ts:/home/jc/arte.ts --sout-all

ligne vlc testée/parfaitement foncionnelle en ligne de commande **, fichier recarte.sh (contenant uniquement cette ligne) rendu executable, atq me montre bien le job a executer...et pourtant quand l'heure arrive, rien ne se passe.
je refais atq et le job n'est plus dans la liste, donc il s'est bien "lancé", sauf qu'il n'a rien fait...

j'ai rajouté un #!/bin/sh en premiere ligne des fois que ça change quelque chose, nada...

Des idées ?

**si ca marche pas chez vous, c'est normal, c'est des flux tv orange, donc faut probablement etre chez orange ET avoir le full routage (livebox v2...)

Hors ligne

#2 Le 09/03/2010, à 12:29

Totor

Re : AT et scripts...

Bonjour,

Ton script est bien lancé. Simplement vlc ne sait pas dans quel DISPLAY il doit s'afficher.
ceci devrait fonctionner.
export DISPLAY=0:0 vlc rtp://@232.0.1.202:8200 --sout file/ts:/home/jc/arte.ts --sout-all


-- Lucid Lynx --

Hors ligne

#3 Le 09/03/2010, à 12:42

p6s

Re : AT et scripts...

Jour'bon smile

mmmh, je viens d'essayer avec le display , toujours rien.

Je ne suis pas sur que le display soit nécessaire d'ailleurs, puisqu'il s'agit d'enregistrer un flux (sout file), pas de l'afficher. quand je lance cette ligne vlc en ligne de commande, il ne m'ouvre aucune fenetre video et se contente sagement d'enregistrer le flux.
... D'un autre coté, même sans fenetre vidéo, il affiche quand meme le player (en ligne de commande, tjrs rien via le script), donc peut-etre que le display est quand meme nécessaire...
Une autre syntaxe ou un autre parametre nécessaire pour le display ?

Dernière modification par p6s (Le 09/03/2010, à 12:46)

Hors ligne

#4 Le 09/03/2010, à 12:50

credenhill

Re : AT et scripts...

hello
capturer d'éventuels messages d'erreur
recarte.sh >/tmp/log 2>&1

Hors ligne

#5 Le 09/03/2010, à 12:51

Totor

Re : AT et scripts...

Désolé, j'ai omis un caractère :
export DISPLAY=:0.0 vlc rtp://@232.0.1.202:8200 --sout file/ts:/home/jc/arte.ts --sout-all

p6s a écrit :

[...]il affiche quand meme le player (en ligne de commande, tjrs rien via le script), donc peut-etre que le display est quand meme nécessaire...

Dès lors qu'une application affiche quoi que ce soit de "graphique", le display est nécessaire

EDIT : :0.0 ne correspond peut-être pas à ton display. Au besoin ajuste cette valeur

Dernière modification par Totor (Le 09/03/2010, à 12:52)


-- Lucid Lynx --

Hors ligne

#6 Le 09/03/2010, à 13:00

p6s

Re : AT et scripts...

credenhill a écrit :

hello
capturer d'éventuels messages d'erreur
recarte.sh >/tmp/log 2>&1

Hello.
effectivement c'est amusant,
"bash: recarte.sh : commande introuvable"

des histoires de syntaxe de base Unix que je maitrise pas trop apparemment cool
Va de soi que recarte.sh est bien là, sauf que je dois taper ./recarte.sh et pas recarte.sh pour que ça se lance. pas sur si le ./ passe dans une commande at -f...

Totor a écrit :

Désolé, j'ai omis un caractère :
export DISPLAY=:0.0 vlc rtp://@232.0.1.202:8200 --sout file/ts:/home/jc/arte.ts --sout-all

p6s a écrit :

[...]il affiche quand meme le player (en ligne de commande, tjrs rien via le script), donc peut-etre que le display est quand meme nécessaire...

Dès lors qu'une application affiche quoi que ce soit de "graphique", le display est nécessaire

EDIT : :0.0 ne correspond peut-être pas à ton display. Au besoin ajuste cette valeur

avec ou sans le ":" manquant, ./recarte.sh me donne  export: 4: rtp://@232.0.1.202:8200: bad variable name
Ou trouve-je l'info pour "ajuster" la valeur ? ca correspond à la resolution de l'ecran ? autre chose ?

Dernière modification par p6s (Le 09/03/2010, à 13:03)

Hors ligne

#7 Le 09/03/2010, à 13:11

Totor

Re : AT et scripts...

Etrange la valeur hmm
bon, export le DISPLAY sur une ligne différente :

export DISPLAY=:0.0
vlc rtp://@232.0.1.202:8200 --sout file/ts:/home/jc/arte.ts --sout-all

Pour référencer ton fichier "recarte.sh", je te conseille de mettre le chemin complet (et pas seulement ./)


-- Lucid Lynx --

Hors ligne

#8 Le 09/03/2010, à 13:22

credenhill

Re : AT et scripts...

$ at now+2 minute
warning: commands will be executed using /bin/sh
at>

at exécutes sh, qui ne connait pas export=
mettre
DISPLAY=:0.0 ; export DISPLAY

ou mettre #!/bin/bash dans le script, pas /bin/sh

Dernière modification par credenhill (Le 09/03/2010, à 13:23)

Hors ligne

#9 Le 09/03/2010, à 13:25

p6s

Re : AT et scripts...

Totor a écrit :

Etrange la valeur hmm
bon, export le DISPLAY sur une ligne différente :

export DISPLAY=:0.0
vlc rtp://@232.0.1.202:8200 --sout file/ts:/home/jc/arte.ts --sout-all

Ah, ca va mieux, j'irai même jusqu'à dire que ça marche ! cool
donc si je veux enregistrer les trucs de ziq sur Arte à 6h du mat par exemple, j'aurai plus qu'à faire
at -f ./recarte.sh 6AM tomorrow (+ un pkill vlc pour finir)

merci

Dernière modification par p6s (Le 09/03/2010, à 13:27)

Hors ligne

#10 Le 09/03/2010, à 13:47

credenhill

Re : AT et scripts...

il y a une option --play-and-exit pour sortir de VLC après avoir joué, peut-être fonctionne-t-elle avec sout

Hors ligne

#11 Le 09/03/2010, à 14:01

p6s

Re : AT et scripts...

credenhill a écrit :

il y a une option --play-and-exit pour sortir de VLC après avoir joué, peut-être fonctionne-t-elle avec sout

C'est à dire ?  si j'enregistre un flux (vs lire un fichier), comment va t-il savoir à quel moment stopper le dit flux ?
Pour un fichier/une playlist, vlc sait quand il arrive au bout, mais pour un flux, à priori il risque pas de deviner si je veux enregistrer 45 minutes ou deux heures.

Dernière modification par p6s (Le 09/03/2010, à 14:03)

Hors ligne

#12 Le 09/03/2010, à 14:10

credenhill

Re : AT et scripts...

effectivement
à la fin de ton script, tu peux mettre
echo "pkill vlc" ¦ at now+2hours
pour qu'il s'arrêtre 2h après avoir été lancé

Hors ligne

#13 Le 09/03/2010, à 15:10

p6s

Re : AT et scripts...

je vais meme tout passer en parametres du coup je pense histoire de faire plus simple/pas avoir à editer le script à chaque fois, genre
./recarte.sh hh mm hh mm (heure minute debut  / heure minute fin)

et le script deviendrait quelque chose comme
export DISPLAY=:0.0
echo 'vlc rtp://@232.0.1.202:8200 --sout file/ts:/home/jc/arte.ts --sout-all'|at $1:$2
echo 'pkill vlc'|at $3:$4

...sauf que ça marche pas, y compris si j'essaie
echo 'export DISPLAY=:0.0'|at $1:$2

encore une histoire de syntaxe qui m'échappe surement...
vais reeessayer le truc d'au dessus (rediriger vers /tmp/log) pour voir où ca coince

...ah ben non rien d'interessant dedans......

warning: commands will be executed using /bin/sh
job 45 at Tue Mar  9 14:25:00 2010
warning: commands will be executed using /bin/sh
job 46 at Tue Mar  9 14:25:00 2010
warning: commands will be executed using /bin/sh
job 47 at Tue Mar  9 14:26:00 2010


bon tant pis, je lancerai 2 commandes at depuis le terminal (une pour recarte.sh , une pour pkill) et "pic'étout" smile

Dernière modification par p6s (Le 09/03/2010, à 15:29)

Hors ligne