はい、シェルなしでfindコマンドを実行できます。ただし、コマンドを起動するには何らかのプログラムが必要であり、出力を表示するには何らかのプログラムが必要です。多くの場合、シェルの機能を使用しており、そのコマンドはインテントを解釈するためにシェルを必要とします。
たとえば、パイプ、リダイレクト、グロビングはシェルの機能であり、解釈するにはシェルが必要になります。「find。-name myfile」はシェルの機能を使用せず、シェルなしで実行できます。"find。-name myfile | sort> output"は、パイピングとリダイレクトの両方を使用し、それを解釈するにはシェルが必要です。
xy *のエスケープに関しては、それが検索する入力であるか、レディクションの出力である場合、シェルはどちらの方法でもそれを展開します。
現在のディレクトリにxyzという名前のファイルがある場合
見つける -name xy *は実際にはfindとして実行されます。-name xyz、これはおそらくあなたが望むものではありません。
あなたが見つけた場合。-name xy *であり、現在のディレクトリにxy *に一致するファイルがない場合は、findとして実行されます。-name xy *。
同様に、現在のディレクトリにxy *に一致するファイルがない場合、ls> xy *はxy *という名前のファイルを作成します。一致するファイルが1つある場合-たとえば、xyzは、ls> xyzを意味します。xy *に一致するファイルが複数ある場合、ls> xy *は失敗します。
続きを読むhttp://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html