2011-03-24 9 views
7

:% x [] tüm çıkışı yakalar mı? Bu kodu çalıştırırsanız

svn_output = %x[svn update /Users/radek/Sites/db2.rft -r 11105 --force ] 
puts 
puts " output is =#{svn_output}=" 

ben bu sonucu

svn: Working copy '/Users/radek/Sites/db2.rft' locked 
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details) 

output is == 

olsun ama değişken svn_output içine svn hata iletisi istiyorum. Mümkün mü?

cevap

11

Sen Stdout'a stderr'yi yönlendirmek istiyorum:

svn_output = %x[svn update /Users/radek/Sites/db2.rft -r 11105 --force 2>&1] 
puts 
puts " output is =#{svn_output}=" 
+0

size – Radek

+5

teşekkür Ya (http://www.ruby-doc.org/stdlib/libdoc/open3/rdoc [open3] kullanmak Tam :-) /index.html) 'stdout' ve 'stderr' arasında ayrım yapmanız gerekiyorsa. –

+0

beni ona dövdün! – Gishu

İlgili konular