2つのスクリプトがあるとしましょうscript1.sh
。たとえば、システムを実行してエディタからスクリプトの出力を取得できるscript2.sh
ようにファイルシステムインタフェースを作成する方法があるかどうかを知りたいと思います。その後、ファイルに書き込むときに修正されたテキストが 。vim file
script1.sh
script2.sh
可能ですか?ファイルが変更されたときに目的のスクリプトを実行できる「inotify」を試しました。しかし、ファイル自体を開くと、一部のスクリプトから標準出力を取得する最初の部分を実行する方法が見つかりませんでした。
ベストアンサー1
この作業に必要なツールは次のとおりです。ヒューズ(FUSE は USerspace のファイルシステムを表します。) FUSE を使用すると、ユーザープログラムがファイルシステムを実装できます。 FUSEファイルシステムで実行されている場合、ファイルvim file
システムfile
を提供するプログラムは、Vimがファイルを読み取るとファイルの内容を生成し、Vimがファイルを保存するときに内容を保存します(または保存しません!)。
FUSEは要求されたものよりも複雑です。ファイルシステムを提供するプログラムは、ファイルの内容だけでなく、ディレクトリ構造、権限なども管理します。また、ファイルを検索できないように設定しない限り(プログラムがそのファイルに対して実行できる操作が制限されている)、各ファイルのチャンクの読み書きを管理する必要があります。
私は古典的なディレクトリ構造を提供しながら、ファイルの内容を操作するためのインターフェースだけを提供するFUSEに基づいて構築されたプロジェクトを見たことがありません。一部のサンプルファイルシステムからコードをコピーできます。