2016-03-23 30 views
0

olarak depolayın w3m döküm sonucunu bir bash komut dosyasında bir değişkene nasıl depolarsınız? W3m dökümünden aldığım sonuç
C: randomIP randomPORT rastgeleUSERNAME randomPASSWORD
"C:" yi kesmek ve her şeyi değişkenlere kaydetmek istiyorum, böylece bir dosyaya ekleyebilirim.Bash komut dosyası: w3m dökümünü

cevap

0

Bu şekilde herhangi bir bash komut çıktısını saklayabilirsiniz: -

var=$(command) # replace command by w3m dump command 
#Later you can replace first occurring of C: by sed 
var=$(echo $var | sed s/^C://) 

Şimdi var değişken olmadan dökümü oluşacaktır "C:".

+0

Şimdi sadece istediğim yazı var, ancak randomIP randomPORT randomUSERNAME randomPASSWORD değişkenlerine nasıl atanır? Teşekkürler! –

+0

Ben IFS =" çalışmak lazım" set $ var $ 1 $ 2 $ 3 evet 'cut' komut satırı ayrı olabilir 4 $ –

+0

yankı yankı yankı yankı. Bunun gibi bazı şeyleri kullanabilirsiniz: - 'echo' randomIP randomPORT randomUSERNAME randomPASSWORD '| randomd 'almak için -d' 'f1'. Benzer şekilde 'f2' 2. argüman için vb. – Devavrata

0
<your command> | read useless var1 var2 var3 var4 

olarak man read açıklandığı, read (büyük sürpriz!) Standart girdi (dolayısıyla boru) üzerine bir çizgi okumak ve olarak (varsayılan boşluk karakteri ile) IFS kullanılarak biri tarafından verilen değişkenler birini atar girişte sınırlayıcı.

Örneğinizde, useless "C:" olarak atanacaktır; var1 "randomIP"; ...

+0

Bu kod pasajı [bir açıklama dahil] [http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers] sorusunu çözebilirken, yayınınızın kalitesini artırmanıza yardımcı olur. Gelecekte okuyucular için soruyu cevapladığınızı ve bu kişilerin kod önerilerinizin nedenini bilmeyebileceğini unutmayın. - [İncelemeden] (https://stackoverflow.com/review/low-quality-posts/11741816) – Ferrybig

+0

Oldukça doğru. Ayrıca, burada benim dizilimimin anlamsız olduğunu anlıyorum, bir boru yeterli olacaktır. Bazı açıklamalar ekledim ama çözümüm şimdi açık. Teşekkürler. –

İlgili konular