これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド findposix です。
プログラム:
NAME
find — ファイルを見つける
SYNOPSIS
find [−H|−L] path... [オペランド式...]
DESCRIPTION
この find ユーティリティは、各ファイルからディレクトリ階層を再帰的に下降します
によって指定された path、で説明されているプライマリで構成されるブール式を評価します
検出された各ファイルの OPERANDS セクション。 各 path オペランドが評価される
すべての末尾を含め、提供されたとおりに変更されていません文字; のすべてのパス名
階層内で検出された他のファイルは、現在の連結で構成されます。
path オペランド、a 現在の場合 path オペランドが XNUMX で終わっておらず、ファイル名が
に関連して path オペランド。 相対部分には、ドットまたはドットドットを含めないでください
コンポーネント、末尾なしキャラクター、シングルのみ間の文字
パス名コンポーネント。
この find ユーティリティは、ファイル階層の任意の深さまで降りることができなければならず、
パスの長さの制限により失敗しないものとします ( path によって指定されたオペランド
アプリケーションが {PATH_MAX} の要件を超えています)。
この find ユーティリティは無限ループを検出します。 つまり、以前に訪問した場所を入力します。
最後に見つかったファイルの祖先であるディレクトリ。 無限を検出したとき
ループ、 find 診断メッセージを標準エラーに書き込み、そのメッセージを回復する必要があります。
階層内での位置を決定するか、終了します。
検索対象のディレクトリ階層からファイルが削除または追加された場合、それは
かどうかは不明 find そのファイルを検索に含めます。
OPTIONS
この find ユーティリティは、POSIX.1‐2008の基本定義ボリュームに準拠する必要があります。 セクション
12.2, ユーティリティ 構文 ガイドライン.
次のオプションは、実装によってサポートされるものとします。
−h シンボリック リンクごとにファイル情報とファイル タイプを評価する
として遭遇した path コマンドラインのオペランドをファイルのオペランドにする
リンク自体ではなく、リンクによって参照されます。 参照ファイルが
存在する場合、ファイル情報とタイプはリンク自体のものでなければなりません。 ファイル
の走査中に遭遇したシンボリックリンクの情報とタイプ
ファイル階層は、リンク自体の階層になります。
−l シンボリック リンクごとにファイル情報とファイル タイプを評価する
として遭遇した path コマンド ラインのオペランド、または
リンクによって参照されるファイルのファイル階層へのトラバーサル
リンク自体ではありません。 参照ファイルが存在しない場合、ファイル
情報とタイプは、リンク自体のものでなければなりません。
相互に排他的なオプションを複数指定する −h と −l してはならない
エラーと見なされます。 指定された最後のオプションは、
効用。 どちらでもない場合 −h も −l オプションを指定すると、ファイル情報と
として検出されたシンボリック リンクのタイプ path コマンド ラインのオペランドまたは検出されたオペランド
ファイル階層のトラバーサル中は、リンク自体のものになります。
オペランド
次のオペランドがサポートされます。
最初のオペランドとそれ以降のオペランドのうち、最初のオペランドまでのオペランド
で始まる '−'、または 「!」 または '('、として解釈されるものとします path オペランド。 もし
最初のオペランドが a で始まる '−'、または 「!」 または '('、動作は規定されていません。 各
path オペランドは、ファイル階層の開始点のパス名です。
で始まる最初のオペランド '−'、または 「!」 または '('、および後続のすべて
引数は、 表現 次の原色と
オペレーター。 説明では、どこでも n が主引数として使用される場合、それは
オプションで前にプラス (「+」) またはマイナス記号 ('−')
次のように署名します。
+n 超えるよ n.
n 正確に n.
- n 以下 n.
次のプライマリがサポートされます。
−名前 パターン
現在のパス名のベース名の場合、プライマリは true として評価されます。
マッチ パターン で説明されているパターン マッチング表記法を使用する セクション 2.13,
パターン マッチング 表記法. の追加ルール セクション 2.13.3, パターン
中古 for ファイル名 拡張 これは照合操作であるため適用しないでください。
拡張。
−パス パターン
現在のパス名が一致する場合、プライマリは true として評価されます パターン
で説明されているパターン マッチング表記法 セクション 2.13, パターン マッチング
表記法. の追加ルール セクション 2.13.3, パターン 中古 for ファイル名
拡張 これは拡張ではなくマッチング操作であるため、適用しないでください。
−ノーザー ファイルが次のユーザー ID に属する場合、プライマリは true として評価されます。
getpwid() 関数は、POSIX.1‐2008 のシステム インターフェイス ボリュームで定義されています。
(または同等のもの) は NULL を返します。
−グループなし ファイルがグループ ID に属している場合、プライマリは true と評価します。
取得() 関数は、POSIX.1‐2008 のシステム インターフェイス ボリュームで定義されています。
(または同等のもの) は NULL を返します。
−xdev プライマリは常に true として評価されます。 それは引き起こす find 続かない
異なるデバイス ID を持つ過去のディレクトリを降順 (st_dev、を参照してください。
STAT() 関数は、POSIX.1-2008 の System Interfaces ボリュームで定義されています)。 もしあれば
−xdev primary が指定されている場合は、式全体に適用されます。
−xdev primary は通常評価されません。
−剪定 プライマリは常に true として評価されます。 それは引き起こす find 降りない
ディレクトリの場合は現在のパス名。 もし −深さ プライマリが指定され、
−剪定 primary は無効です。
−パーマ [−]モード
この モード 引数は、ファイル モード ビットを表すために使用されます。 それは同一でなければならない
にフォーマット シンボリックモード に記述されたオペランド chmod、および解釈されるものとします
次のように。 まず、テンプレートはすべてのファイルモードビットであると想定されます
クリアしました。 アン op のシンボル 「+」 に適切なモードビットを設定しなければならない
テンプレート; '−' 適切なビットをクリアします。 '=' 適切な
モードビット、ファイルモード作成マスクの内容に関係なく
処理する。 の op のシンボル '−' の最初の文字にすることはできません モード; これは回避します
オプションの先頭のあいまいさ. 初期モードは全てなので
ビットオフ、使用する必要があるシンボリックモードはありません '−' 最初として
文字。
もしが省略された場合、プライマリはファイルが true と評価されます。
許可ビットは、結果のテンプレートの値と正確に一致します。
そうでなければ、 モード の前に、プライマリは true として評価されます
結果のテンプレートの少なくともすべてのビットがファイルに設定されている場合
許可ビット。
−パーマ [−]オヌム
もしが省略された場合、プライマリはファイルが true と評価されます。
モード ビットは XNUMX 進数の値と正確に一致します オヌム (説明を参照
XNUMX進数の モード in chmod)。 そうでなければ、もし オヌム の前に、
で指定されたビットの少なくともすべての場合、プライマリは true として評価されます。 オヌム
設定。 どちらの場合も、次の場合の動作は規定されていません。 オヌム 07777を超えています。
−タイプ c ファイルのタイプが cここで、 c is 「b」,
'NS', 'NS', 'l', 'NS', 'f'または 「s」 ブロックスペシャルファイル用、キャラクタースペシャルファイル用、
それぞれ、ディレクトリ、シンボリック リンク、FIFO、通常のファイル、またはソケット。
−リンク n ファイルが n リンク。
−ユーザー uname
ファイルがユーザーに属している場合、プライマリは true として評価されます うなめ。 If
uname は XNUMX 進整数であり、 ゲットプナム() (または同等の) 関数は
有効なユーザー名を返す uname ユーザーIDとして解釈されます。
−グループ 名前
ファイルがグループに属している場合、プライマリは true として評価されます 名前。 場合
名前 は XNUMX 進整数であり、 ゲットグルナム() (または同等の) 関数は
有効なグループ名を返し、 名前 グループ ID として解釈されます。
−サイズ n[c]
プライマリは、ファイル サイズ (バイト単位) が 512 で除算され、
次の整数に切り上げ、 n。 場合 n 文字が続きます 'NS',
サイズはバイト単位です。
−時間 n プライマリは、ファイル アクセス時間を
初期化時間を 86400 で割ると (余りは破棄されます)、 n.
−ctime n プライマリは、ファイル ステータスの最終変更時刻が true であると評価します。
初期化時間から差し引いた情報を 86400 で割った値 (
残りは破棄されます)、 n.
−分時間 n ファイルの変更時間を差し引いた場合、プライマリは true と評価されます。
初期化時間を 86400 で割ると (余りは破棄されます)、 n.
−実行 ユーティリティ名 [引数 ...] ;
−実行 ユーティリティ名 [引数 ...] {} +
一次表現の終わりは、 またはによって
. のみを含む引数の直後に続く
二文字だけ 「{}」 一次表現の終わりを句読点にしなければなりません。
その他の用途特別扱いしない。
一次式が句読点で区切られている場合、ユーティリティ
ユーティリティ名 各パス名に対して XNUMX 回呼び出され、プライマリは
ユーティリティが終了ステータスとしてゼロ値を返す場合、true として評価されます。 あ
ユーティリティ名 or 引数 XNUMX文字のみを含む 「{}」 しなければならない
現在のパス名に置き換えられます。 もし ユーティリティ名 or 引数 文字列に含まれる
XNUMX人のキャラクター 「{}」、しかしXNUMX文字だけではありません 「{}」、それは
実装定義かどうか find これらの XNUMX 文字を置き換えるか、
変更なしの文字列。
一次式が句読点で区切られている場合、プライマリは
常に true として評価され、プライマリが評価されるパス名
セットに集約されます。 ユーティリティ ユーティリティ名 一度呼び出される
集約されたパス名のセットごとに。 各呼び出しは、最後の呼び出しの後に開始する必要があります
セット内のパス名は集約され、 find
ユーティリティが終了し、次のセット (存在する場合) の最初のパス名が
このプライマリ用に集約されますが、それ以外の場合は未指定です
呼び出しは、他のプライマリの評価前、評価中、または評価後に発生します。
いずれかの呼び出しが終了ステータスとしてゼロ以外の値を返す場合、 find ユーティリティ
ゼロ以外の終了ステータスを返します。 XNUMX つだけを含む引数
文字 「{}」 集約されたパス名のセットに置き換えられます。
呼び出されたユーティリティに別の引数として同じ順序で渡されるパス名
集約されたということです。 XNUMX つ以上のパス名のセットのサイズは、
ユーティリティの実行によってシステムの {ARG_MAX} が発生しないように制限されています。
超える限界。 XNUMX 文字を含む引数が複数ある場合
「{}」 が存在する場合、動作は規定されていません。
を呼び出すための現在のディレクトリ ユーティリティ名 と同じでなければならない
のときの現在のディレクトリ find ユーティリティを起動しました。 もし ユーティリティ名
特別な組み込みユーティリティの名前を付けます (を参照してください)。 セクション 2.14, Special 内蔵
ユーティリティ)、結果は未定義です。
−わかりました ユーティリティ名 [引数 ...] ;
この −わかりました プライマリは次と同等でなければなりません −実行の使用を除いて、
一次式の終わりを区切る記号 > をサポートする必要はありません。
find の呼び出しの確認を要求しなければならない ユーティリティ名
で説明されているように、標準エラーに書き込むことにより、現在のファイルを引数として
STDERR セクション。 標準入力の応答が肯定の場合、ユーティリティは
呼び出されるものとします。 それ以外の場合、コマンドは呼び出されず、値
−わかりました オペランドは偽でなければなりません。
−印刷 プライマリは常に true として評価されます。 それは現在のパス名を引き起こします
標準出力に書き込まれます。
−新しい file
プライマリは、現在のファイルの変更時刻が true と評価されます。
パス名で指定されたファイルの変更時刻より新しい
file.
−深さ プライマリは常に true として評価されます。 それはの降下を引き起こすものとします
ディレクトリ内のすべてのエントリが処理されるようにするディレクトリ階層
ディレクトリ自体の前。 もし −深さ プライマリが指定されていない、すべてのエントリ
ディレクトリ内の は、ディレクトリ自体の後に処理されます。 もしあれば −深さ
primary が指定されている場合は、式全体に適用されます。 −深さ
primary は通常評価されません。
プライマリは、次の演算子を使用して組み合わせることができます (降順に
優先):
( 表現 )
Trueの場合 表現 本当です。
! 表現
プライマリの否定。 単項 NOT 演算子。
表現 [-a] 表現
原色の組み合わせ; AND 演算子は、
XNUMX つのプライマリまたはオプションで明示的に作成 −a オペレーター。 二番目
最初の式が false の場合、式は評価されません。
表現 −o 表現
予備選挙の交代; OR 演算子。 XNUMX 番目の式は、
最初の式が true の場合に評価されます。
ない場合 表現 存在します、 −印刷 表現として使われます。 それ以外の場合、
指定された式にはプライマリが含まれていません −実行, −わかりましたまたは −印刷、与えられた
式は、次のように効果的に置き換えられます。
( 与えられた式 ) −印刷
この −ユーザー, −グループ, −新しい 予備選挙はそれぞれ、それぞれの引数を評価するものとします
XNUMX回だけ。
現在のファイルに対して評価されたファイル タイプがシンボリック リンクの場合、
を評価する −パーマ primary は実装定義です。
標準入力
Status −わかりました primary が使用される場合、応答は標準入力から読み取られます。 全体
行が応答として読み取られます。 それ以外の場合、標準入力は使用されません。
入力 ファイル
なし。
ENVIRONMENT 変数
次の環境変数は、の実行に影響を与えます。 find:
言語 設定されていない、または設定されていない国際化変数のデフォルト値を指定します
ヌル。 (POSIX.1‐2008の基本定義ボリュームを参照してください。 セクション 8.2,
国際化 Variables 国際化の優先順位について
ロケールカテゴリの値を決定するために使用される変数。)
LC_ALL 空でない文字列値に設定されている場合は、他のすべての値を上書きします
国際化変数。
LC_COLLATE
範囲、同値類、および複数の動作のロケールを決定します。
のパターンマッチング表記で使用される文字照合要素 −n
オプションと、 はいexpr ローカル
のキーワード LC_MESSAGES カテゴリ。
LC_CTYPE この変数は、バイトシーケンスの解釈のロケールを決定します
文字としてのテキストデータの使用(たとえば、マルチバイトではなくシングルバイト)
引数の文字)、パターン内の文字クラスの動作
に使用される一致表記 −n オプション、および文字クラスの動作
に対して定義された拡張正規表現で使用される正規表現内
はいexpr のロケールキーワード LC_MESSAGES カテゴリ。
LC_MESSAGES
肯定応答の処理に使用されるロケールと、使用されるロケールを決定します
に書き込まれる診断メッセージとプロンプトの形式と内容に影響を与える
標準エラー。
NLSパス の処理のためのメッセージカタログの場所を決定します LC_MESSAGES.
パス の場所を決定します。 ユーティリティ名 −実行 と −わかりました 予備選挙として
POSIX.1‐2008の基本定義ボリュームに記載されています。 章 8, 環境
Variables.
非同期 イベント
デフォルト。
標準出力
この −印刷 primary は、現在のパス名が標準出力に書き込まれるようにします。 の
形式は次のとおりです。
"%s \ n"、 <path>
標準
この −わかりました primary は、少なくとも以下を含むプロンプトを標準エラーに書き込みます。
ユーティリティ名 呼び出されるパス名と現在のパス名。 POSIX ロケールでは、最後の
非プロンプトで 「?」. 使用される正確な形式は指定されていません。
それ以外の場合、標準エラーは診断メッセージにのみ使用されます。
出力 ファイル
なし。
拡張済み DESCRIPTION
なし。
EXIT ステータス
次の終了値が返されます。
0すべて path オペランドが正常にトラバースされました。
> 0エラーが発生しました。
結果 OF エラー
デフォルト。
この フォロー中 セクション 有益です。
お申込み USAGE
オペランドで使用する場合、パターン マッチング表記、 、 、 と
文字はシェルにとって特別なものであり、引用符で囲む必要があります (参照 セクション
2.2, 引用).
従来、スティッキーに使用されていたビット (歴史的には 01000) は、
−パーマ XNUMX 進数の引数形式を使用したプライマリ。 このビットはこれによって定義されていないため、
POSIX.1-2008 の巻に含まれているため、アプリケーションはそれが実際に POSIX.XNUMX-XNUMX を参照していると想定してはなりません
従来の粘着ビット。
例
1. 次のコマンドは同等です。
find .
find . −印刷
どちらも、現在のディレクトリからディレクトリ階層全体を書き出します。
2.次のコマンド:
find / \( −名前 TMP −o −名前 '*.xx' \) −時間 +7 −実行 rm {} \;
指定されたすべてのファイルを削除します TMP またはで終わる .xx XNUMX年以上アクセスされていない
より多くの 24 時間の期間。
3.次のコマンド:
find . −パーマ −o+w,+s
プリント (−印刷 と仮定されます) 現在のディレクトリ内またはその下にあるすべてのファイルの名前、
すべてのファイル許可ビット S_ISUID、S_ISGID、および S_IWOTH が設定されています。
4.次のコマンド:
find . −名前 SCCS −剪定 −o −印刷
現在のディレクトリ以下にあるすべてのファイルのパス名を再帰的に出力しますが、
SCCS という名前のディレクトリとその中のファイルをスキップします。
5.次のコマンド:
find . −印刷 −名前 SCCS −剪定
前の例と同じように動作しますが、SCCS ディレクトリの名前を出力します。
6. 次のコマンドは、 −nt への拡張 test:
if [ −n "$(見つける file1 −剪定 −新しい file2)」 ]; その後
printf %s\\n "ファイル1 is より新しい より ファイル2"
fi
7. の説明 −時間, −ctime, −分時間 用語を使用する n 86400秒
期間(日)」。 たとえば、23:59 にアクセスされたファイルは次のように選択されます。
find . −時間 -1 −印刷
翌日の 00:01 (24 時間以内、XNUMX 日以内); の
日の間の午前 24 時の境界は、XNUMX 時間の計算には影響しません。
8.次のコマンド:
find . ! −名前 . −剪定 −名前 '*。年' −実行 \
sh −c 'mv 「$ @」 ../年/' sh {} +
以下と同じタスクを実行します。
mv 。/*。年 。/。年 ./.*。古い ../年/
多数の引数がある場合に「引数リストが長すぎます」エラーを回避しながら
で終わるファイル 。古い そして走らずに mv そのようなファイルがない場合 (および回避
``No such file or directory'' エラー 。/。年 存在しないか、一致するファイルがありません
。/*。年 or ./.*。古い).
代替案:
find . ! −名前 . −剪定 −名前 '*。年' −実行 mv {} ../年/ \;
XNUMX つのファイルを実行するため、移動するファイルが多数ある場合は効率が低下します。 mv command
ファイルごとに。
9. 以下のディレクトリにリムーバブル メディアをマウントするように構成されたシステム /メディア
次のコマンドは、ファイル階層を検索して、100000 KB を超えるファイルを検索します。
マウントされたリムーバブル メディアの検索:
find / −パス /メディア −剪定 −o −サイズ +200000 −印刷
10. ルート ディレクトリを除いて、および 「//」 実装について 「//」 参照しない
ルートディレクトリに、パターンは指定されていません −名前 一致します、 なぜなら
末尾以下のファイルのベース名を計算するとき、文字は無視されます。
評価。 名前が付けられた XNUMX つの空のディレクトリが与えられた場合 foo と バー、次のコマンド:
find ふー/// バー/// −名前 foo −o −名前 'バー?*'
行のみを印刷します 「ふー///」.
理論的根拠
この −a 演算子は、歴史的なものとの互換性のためにオプションの演算子として保持されました
式の連結では冗長ですが、シェルスクリプト。
の説明 '−' の修飾子 モード と オヌム に対する議論 −パーマ 主要な
BSD および System V の実装に関する歴史的な慣行に同意します。 システム V と BSD
ドキュメントは両方とも、追加ビットのチェックに関して説明しています。 実際、それは
同じビットですが、少なくともすべての一致するビットが設定されているかどうかをチェックします。
正確に一致するビット セット。
インタラクティブプロンプトの正確な形式は指定されていません。 の一般的な性質のみ
プロンプトの内容が指定されている理由は次のとおりです。
* 実装では、履歴で使用されるものよりも説明的なプロンプトが必要な場合があります
実装
* 過去のプロンプト文字列は で終わらないため文字、そこに
別のプログラムがこのユーティリティのプロンプトと対話するための移植可能な方法ではありません
パイプ経由。
したがって、このプロンプト オプションを使用するアプリケーションは、システムに依存して
指定された一般的なガイドラインに基づいて、ユーザーと直接対話するのに最適です。
この −名前 file オペランドは、シェル パターン マッチング表記を使用するように変更されました。 find
パターン マッチングを使用する他のユーティリティと一貫性があります。
この −サイズ オペランドは、ブロックの数ではなく、ファイルのサイズを参照します
ファイルシステムを占有します。 その意図は、 st_size システムで定義されたフィールド
POSIX.1-2008 のインターフェイス ボリュームを使用する必要があります。 st_blocks 歴史的に発見された
実装。 これには少なくとも XNUMX つの理由があります。
1. System V と BSD の両方で、 find 使用のみ st_size オペランドのサイズ計算
POSIX.1‐2008 のこのボリュームで指定されています。 (BSD は st_blocks を処理するときだけ
−ls 主要な。)
2. 通常、ユーザーはファイル サイズをバイト単位で考えます。
ls からの出力のユーティリティ −l オプション。 (System V と BSD の両方で、 ls 使用されます
st_size −l オプション サイズ フィールドと用途 st_blocks ls −s 計算。
この巻の POSIX.1‐2008 では、 ls −s.)
の説明 −時間, −ctime, −分時間 の SVID 記述から変更されました n
「日」まで n 秒単位の時差の整数除算の結果
86400までに。説明は、正確な時間枠に関しても異なります。 n 場合
(対 +n or −n)、しかし、それはすべての既知の歴史的な実装に一致します. それは
過去の 86400 秒の期間であり、その期間の開始から
現在の時刻。 例えば、 −時間 2 は、ファイルがその時点でいつでもアクセスされた場合に真です。
72 時間前から 48 時間前までの期間。
歴史的な実装は変更されません 「{}」 の部分文字列として現れるとき −実行
or −わかりました ユーティリティ名 または引数文字列。 これには多くのユーザーリクエストがありました
したがって、この量の POSIX.1-2008 は望ましい動作を可能にします。 少なくとも XNUMX つの最近の
実装はこの機能をサポートしていますが、管理でいくつかの問題が発生しました
メモリ割り当てと複数回の発生への対処 「{}」 それがあった間、文字列で
開発中のため、まだ必要な動作ではありません。
の存在を仮定すると、 −印刷 悩まされている歴史的な落とし穴を修正するために追加されました
初心者ユーザーは、歴史的な System V から完全に上位互換性があります。 find ユーティリティ。
最も単純な形式 (find ディレクトリにジョブを開始します。)、歴史的な BSD 高速と混同される可能性があります。
find. BSD開発者は、追加することに同意しました −印刷 デフォルトの式は
正しい決定と高速を追加しました find と呼ばれる新しいユーティリティ内の機能
locate.
歴史的に、 −l オプションはプライマリを使用して実装されました −フォローするを選択します。 −h と −l
オプションが追加された理由は XNUMX つあります。 まず、より細かい制御を提供し、
ファイル階層をたどる他のプログラムとの一貫性。 第二に、 −フォローする 主要な
常に true と評価されます。 それらは歴史的に実際にグローバル変数だったので、
トラバーサルが開始される前に、いくつかの有効な式が予期しない結果をもたらしました。 アン
例は式です −印刷 −o −フォローする。 なぜなら −印刷 常に true と評価され、
評価の標準的な順序は、 −フォローする 評価されることはありません。 これは決してなかった
ケース。 の歴史的慣習 −フォローする ただし、primary には一貫性がありません。 いくつか
実装は常にコマンド ラインのシンボリック リンクをたどります。 −フォローする is
指定されているかどうか。 その他は、次の場合にのみコマンド ラインのシンボリック リンクをたどります。 −フォローする is
指定。 両方の動作は、 −h と −l オプションですが、
現在 −フォローする 次の場合、プライマリは壊れます。 −フォローする オプションは、次のいずれかで動作するように指定されています
ウェイ
から −l オプションはすべてのシンボリック リンクを解決し、 −タイプ l プライマリは真です
シンボリック リンクが解決された後も存在するシンボリック リンク、コマンド:
find −l . −タイプ l
解決されない現在のディレクトリから到達可能なシンボリック リンクのリストを出力します
アクセス可能なファイルに。
SVR4の特徴 find ユーティリティは −実行 プライマリー + ターミネーター。 これにより許可された
特殊文字を含むファイル名 (特に文字)をグループ化する
そのようなファイル名がパイプされた場合に発生する問題なしで一緒に xargs。 その他
実装では、この問題を回避する別の方法が追加されています。 −print0
ヌル バイト ターミネータを使用してファイル名を書き込んだプライマリ。 こちらで検討しましたが、
採用されていません。 null ターミネータを使用すると、処理しようとしていたすべてのユーティリティが
find's −print0 出力は、現在の null ターミネータを解析する新しいオプションを追加する必要がありました
読んでください。
この "−実行...{}+" 構文が採用されたのは、IEEE PASC Interpretation 1003.2 #210 の結果です。
これは、IEEE Std 1003.2‐1992 と互換性のない変更であることに注意してください。 例えば、
次のコマンドは、すべてのファイルを '−' 彼らが定期的である場合、彼らの名前の後に
ファイル、および 「+」 さもないと:
find / −タイプ f −実行 echo {} - ';' −o −実行 echo {} + ';'
この変更により、このような使用法が無効になります。 以前の規格では、これは
使用法は機能しますが、実際には多くの人がそれをサポートしておらず、標準的な開発者はそれを感じていました
これは許されなかったと述べたほうがよいでしょう。
未来 道順
なし。
onworks.net サービスを使用してオンラインで findposix を使用する