ディレクトリ内のすべてのFIFOファイルを削除するシェルコマンドが見つかりません。実際、ディレクトリを削除するためにコマンドはrm
オプションを提供し-d, --dir
ますが、FIFOの場合は提供しません。
現在発見されている唯一の回避策は、このようにFIFOを呼び出してを使用しfoo.fifo
て簡単に削除できるようにすることですrm *.fifo
。
答え1
現在のディレクトリとすべてのサブフォルダのすべてのFIFOを削除するには、次のようにします。
find . -type p -delete
現在のディレクトリのFIFOのみを削除するには、次を使用します。
find . -maxdepth 1 -type p -delete
答え2
シェルは現在のディレクトリでのみ動作します。
set -- ./*
for f do
[ -p "$f" ] && rm "$f"
done
答え3
この試み:
find -maxdepth 1 -type p -exec rm {} \;
マンページfind
:
-type c
File is of type c:
p named pipe (FIFO)