Shell
如何創建一個偽文件,每次讀取時從命令中獲取其內容
我想創建一些類似文件的東西(可以像普通文件一樣讀取),每次讀取它時,它都會從命令中獲取輸出。
例如,如果我這樣做
echo $RANDOM > test
,那麼我可以呼叫cat test
它,它會顯示生成的隨機數。除了每次呼叫
cat test
(或以任何其他方式讀取)時我都需要呼叫生成器命令(echo $RANDOM
在我的範例中,但實際上它會生成更多數據——大約 1kb)。我認為最好的選擇是創建某種設備特殊文件/設備驅動程序?我需要的確實類似於 /dev/zero 或 /dev/random。是否可以簡單地創建它?使用標準的 gnu/sh 庫會是理想的嗎?
提前感謝您的任何提示!
使用命名管道功能:
mkfifo myfancypipe; while true; do bash -c 'echo $RANDOM' > myfancypipe; done
現在去另一個終端,每次你都會打電話:
cat myfancypipe
您將從
echo $RANDOM