Bash ve zsh'de (ve belki de diğer kabuklarda), anında bir dosya oluşturmak için işlem ikamesini ( Bash / zsh ) kullanabilir ve daha sonra bunu boru hattı zincirindeki bir sonraki işleme girdi olarak kullanabilirsiniz.
Örneğin, jq
ve kullanarak cURL JSON çıktı ayrıştırmaya çalışıyordu less
, ama Failed writing body
hata alıyordu .
# Note: this does NOT work
curl https://gitlab.com/api/v4/projects/ | jq | less
Süreç ikamesi kullanarak yeniden yazdığımda işe yaradı!
# this works!
jq "" <(curl https://gitlab.com/api/v4/projects/) | less
Not: jq
bir girdi dosyası belirtmek için 2. bağımsız değişkenini kullanır
Bonus: kullanıyorsanız jq
benim gibi ve istediğiniz colorized çıktı tutmak içinde less
, yerine aşağıdaki komut satırını kullanın:
jq -C "" <(curl https://gitlab.com/api/v4/projects/) | less -r
( Neden gerçekleştiğine dair açıklamalarından dolayı Kowaru'ya teşekkürler . Ancak, iki kez kullanma çözümleri benim için işe yaramadı. Ayrıca büyük dosyalar için daha iyi ölçeklenecek ve yorum olarak belirtilen diğer sorunlardan kaçınmaya çalışan bir çözüm bulmak istedim. bu cevaba.) Failed writing body
tac