Sıklıkla, yalnızca dosyalardan (örneğin wdiff) girdi girişini tekrar eden bir şekilde kabul eden programları komut satırına nispeten kısa dize verileri (ancak birkaç satır olabilir) beslemek istiyorum. Tabii ki bir veya daha fazla geçici dosya oluşturabilirim, dizgiyi oraya kaydedebilir ve komutu dosya adı ile parametre olarak çalıştırabilirim. Ancak, eğer veri diske gerçekten yazılırsa, bu prosedür çok verimsiz geliyormuş gibi görünüyor ve ayrıca bu işlemi birçok kez tekrarlarsam, örneğin uzun metin satırlarını tek tek beslemek istersem diske gerekenden daha fazla zarar verebilir gibi görünüyor. wdiff için dosyalar. Bunu atlatmanın önerilen bir yolu var mı, yani verileri diske yazmadan (veya yalnızca kritik bir uzunluğu aşarsa yazarak) geçici olarak saklamak için borular gibi sahte dosyaları kullanarak. Wdiff’in iki argüman aldığını vewdiff <"text"
.
xargs
girdi satırlarını komut dizgesindeki dosya dizgisi argümanlarından yapar. Ama tam tersine ihtiyacım var.
echo $data_are_here | dumb_program
?
xargs
mi?