find /tmp -printf "%s %p\n" |sort -n -r | head 

の%ディレクティブの説明このコマンドは正常に機能していますが、

オプション?使用できる他のオプションはありますか?

コメント

回答

ここで使用される%s%pオプションは何ですか?

のマニュアルページから

%s ファイルのサイズ(バイト単位)。

%p ファイルの名前。

そのページを下にスクロールしてprintfを実行し、先頭に%が付いている部分を読み取ります。

%n ファイルへのハードリンクの数。

%p ファイル名前。

%P ファイルの名前とその下の開始点の名前削除されたことが判明しました。

%s ファイルのサイズ(バイト単位)。

%t ファイルの最終変更時刻。C`ctime “関数によって返される形式です。

使用できる他のオプションはありますか?

あります。マンページへのリンクを参照してください。

コメント

  • @don_crissti I 'なぜ人々が理解できないのかシステムにインストールされているドキュメントよりもランダムなWebドキュメントを好む(システムに実際に関連するという追加の利点があります)。
  • @ Kusalananda-ええと、人々がシステムにインストールされているドキュメントからの引用ではなく、Webページへのリンク:'投稿の執筆時点では、Linuxマシンにはありません…ただし、リンク(imo)を公式ドキュメントにポイントする必要があります(したがって、上記の私のコメントは、何らかの理由で、modによって削除されました…)。それはさておき、私はあなたに完全に同意します。OPは彼らのシステムにインストールされたマニュアルページを参照する必要があります。
  • @don_crisstiまたは、マンページがインストールされていないサーバー上にあります。かなり頻繁です。
  • 私のマニュアルページは、FreeBSDからのものである傾向があります。 LinuxVMが手の届くところにある場合を除いて。そして、ほとんどの質問はGNU / Linuxベースであるという印象を持っています。
  • プログラマー/パワーユーザーとして、比較的経験の浅いユーザー向けのmanページの圧倒的でしばしば不可解な出力に加えて、それも追加する必要があります。 ' mは通常、manページではカバーされていない新しいソリューションを探しています'。たとえば(今)、' find 'コマンド出力の特定の日付形式。マニュアルページでは、' "%T "を前に置くように指示されていません各変数-少なくともそれを具体的に探していても私が見つけたものではありません。あなたはそれを理解しようと一日中過ごすことができます。 (または単に与える。)一方、Stack Exchangeで検索すると、最初の結果で明確に説明されたその答えが得られます。

回答

Barrett 2012の74ページの説明:

-printf string 指定された文字列を出力します。これには、Cライブラリ関数printf()の方法で置換が適用されている可能性があります。 “

もちろん、オプションの完全なリストについては、マンページを参照してください。 find . -printf "%s %p\n"のようなものは説明されますが、他の人は説明しません。 @jim%Tの使用について言及しています。私は個人的にfind . -printf "%T@ %p\n"に似た行のスクリプトを使用していますが、その%T@が何であるかを理解することはできません。マンページにないこれらのオプションの説明ソースを誰かが参照できますか?

コメント

  • 誰'このバレットの男ですか?
  • @ Kusalananda、Daniel J. Barrett、" Linux Pocket Guide "の作成者、ページ引用は第2版を指します。図書館に行く前に、この質問の解決策はそこに蜂が見つからないことであることに注意してください。それ以外の場合は、非常に優れたガイドです。
  • その日のfind 'のマンページから欠落している可能性があります。 %Tk専用のエントリが表示されます。ここで、kは%Akで使用されているものと同じ表記です。状態:@ = 1970年1月1日からの秒数00:00GMT、小数部あり。
  • @Nicholi | ありがとう、それは理にかなっています。 他の形式の時間では、うまく並べ替えられないことがあります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です