Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ruby rsync session et Open4

1 view
Skip to first unread message

Une Bévue

unread,
Mar 23, 2012, 9:51:22 AM3/23/12
to
si, au teminal je lance rsync :

rsync blahblah...

j'obtiens la sortie (STDOUT) de rsync et en cas d'erreur qqc sur STDERR.

si je fais "la même chose" avec ruby / session ou Open4

par ex :
bash = Session::Bash.new
bash.execute @cmd do |stdout, stderr|
puts "STDOUT:\n#{ stdout }"
puts "STDERR:\n#{ stderr }"
end


avec àcmd la même commande que lancée au terminal,

je n'ai rien sur STDOUT
j'ai seulement STDERR quand je produit volontairement une erreur.

peut-être est-ce un fonctionnement "normal" de rsync (lancé depuis Mac
OS X ou Ubuntu) ?

je veux dire quand rsync n'est pas lancé depuis un tty ?

ce qui supposerait que mes options de commandes ne sont pas bonnes ?

la commande :
rsync -a --delete-after --exclude '.DS_Store' --iconv=UTF-8,UTF-8-MAC
--rsync-path=#{RMT_RSYNC} -e ssh #{RMT_SRV}:#{RMT_HOME}/Desktop #{LOC_HOME}"

maintenant supposons que ce problème soit résolu, comment faire pour
obtenir chaque ligne, d'une manière asynchrone, de la stream envoyée sur
stdout ?
0 new messages