Unixコマンドログでファイル名とディレクトリを識別する方法は?

Unixコマンドログでファイル名とディレクトリを識別する方法は?

端末への入力としてUnixコマンドデータセットがあり、それを使用してユーザーの動作を比較したいと思います。

異なるユーザーは、異なるディレクトリとファイル(すべて異なるコンピュータにあります)と対話します。あるユーザーが同じ引数/パラメータを使用して同じコマンドを使用していることを確認したいと思います(ただし、別のファイル名/ディレクトリを引数として使用できてうれしいです)。

論理的にこれを達成するには、データセットからファイル名とディレクトリを削除してから類似点を見つける必要がありますが、それは私の質問です。

ファイル名とディレクトリをコマンドライン引数/パラメータとして認識する方法は?

たとえば、与えられた ls -F thesis

thesisファイル/ディレクトリで識別する方法(この場合、意味は理解されますlsが、より広範囲に見て実行されるコマンドの意味はわかりません)

ベストアンサー1

あなたはできません。

実行するすべてのコマンドの意味を理解する必要があります。

コマンドラインでコマンドに与えられたすべての引数はプログラムに渡され、プログラムは必要に応じて何でも実行できます。プログラムは引数を一貫して解釈する必要さえありません(そうであれば、おそらくあまり役​​に立ちません)。

また、一部のユーザーがスペルエラー(プログラム名にも表示される可能性があります)、特定のファイルがあるかどうかを確認しようとする試み、誤解を招くファイルなど、存在しないファイルを解決した可能性があることも考慮する必要があります。私はいくつかのプログラムが与えられたパラメータが既存のファイルの名前であるかどうかによって異なる動作をしているようですが、どちらの場合も何かを行います。

ctrl-alt-delorが提案するタブ補完データは、基本的に(一般的に使用される)多くのコマンドの意味をエンコードする方法ですが、(私はこれを見るのに多くの時間を費やしていません)、シェルユーザーが誰であるかによって異なります。できます。 、それ以降に変更された可能性があります。したがって、これが進む道を提示することはできますが、問題がないわけではありません。

おすすめ記事