Ben Windows'un bu komut satırı girişi vardır:Ruby ile komut satırını yaparken dikey çubuktan nasıl kurtulabilirim?
dir /b | ruby -ne 'f=$_.chomp;File.read(f).each_line{|line| print f if line =~ /helloworld/};'
Bu çizgi içinde helloworld
ile geçerli dizindeki bütün dosyaları bulmaktır.
Bu hat line is not a valid command
diyerek hata veriyor:
Benim sorum (Ben orada bunu yapmak için birçok yolu vardır ama sonrası o odaklanmıyorsa anlıyorum). Sonra bloğun içinde bir değişken olarak cmd cinsinden bir boru işareti olduğu için Ruby'de |
fark ettim. Bütün satırı çift tırnak içine değiştirmeye çalıştım ve kaçış | işaret ama başarı yok. Dikey çubuktan nasıl kurtulabilirim?
Lütfen, grep, find, sed veya awk gibi diğer araçları kullanma veya bloğu for döngüsüne değiştirme gibi işlemleri yapmanın başka yollarını kullanmayın.
Aslında çalışıyor! Denedim, ama sadece ile çalıştı | \ tarafından kaçtı ama bir şey kaçmadan denemedim ve bu şaşırtıcı derecede iyi olduğu ortaya çıktı. – texasbruce
@texasbruce Bunu duyduğuma sevindim. Bu, programlamanın gerçeklerinden biri - ayrıca işletim sisteminin işleyişini iyi anlamanız gerekiyor. Cevabım sorununuzu çözdüyse, lütfen kabul etmeyi düşünün. – Kelvin