実際の宿題の問題は
- ルートに属さず、7月に作成されなかったすべてのファイル/ディレクトリを一覧表示します。
使用する方法が見つかりません。
エルエス
そして
grep
出力ファイル ~/NotOwnedByRoot.txt
find / \! -user root -d -maxdepth 1 -exec ls > ~/NotOwnedByRoot.txt {} +
私も試しました
find / \! -user root -type d -maxdepth 1 > ~/NotOwnedByRoot.txt
エラーが発生しました。
find:警告:オプションではなく引数!後に-max深度オプションを指定しましたが、オプションは位置指定ではありません(-max深度は後に指定されたテストだけでなく、以前に指定されたテストにも影響します)。他のパラメーターの前にオプションを指定してください。
答え1
grepでlsを使うことができ、とても簡単です。 grepで-vオプションを使用すると、存在しない単語やフレーズを検索できるため、検索に関係のないすべての項目が出力されます。
これを実行したいディレクトリで次のことを試してください。ls -l | grep -v ルート ||
最初の部分ls-l長いリスト順ですべてのファイルを一覧表示
これ|シンボルはパイプと呼ばれ、前のコマンドの入力を取得し、次のコマンドの入力として使用します。この場合、ls -l は「grep」の入力として使用されます。
第二部grep -v ルートディレクトリgrepを使って-Vオプション、クエリルートで使用-V検索中のアイテムがないすべてのアイテムを検索するオプションを使用すると、「ルート」を持たないすべてのアイテムを見つけることができます。
ついに最後の部分に到着しました||7月、これ||デフォルトでは、grepは「and」を意味するため、2つ以上のクエリを指定すると、「July」は2番目のクエリになります。 ***
PS:質問は「NOTOWNEDBYROOT」というファイルを作成するのではなく、ルートではないか、7月に作成されたすべてのファイル/サブディレクトリをディレクトリから検索することです。