p4 fstat
ファイル情報をスクリプトによる構文解析に適したフォーマットにダンプします。
構文
p4 [g-opts] fstat [-F filter -L -T fields -m max -r] [-c|-e change] [-Ox -Rx -Sx] [-A pattern ] [-U] file[rev]...
説明
p4 fstat
コマンドは、個々のファイルに関する情報を項目ごとに別々の行に分けてダンプします。 この出力は、各項目が変数としてアクセス可能なHelix C/C++ APIアプリケーションでの使用に最適ですが、スクリプトによる構文解析にも適しています。
p4 fstat
コマンドで唯一必要な引数は、file[rev]
引数です。 その他のすべてのオプションは、操作を行うファイルのセットの制限、または選択ファイルの情報の量または表示の制御に関連しています。
- 出力のソート基準となるフィールドを変更するには
-S
オプションのうち1つを使用し、ソート順序を逆にするにはx
-r
オプションを使用します。 - ファイルの出力を
max
個までに限定するには、-m max
オプションを使用します。 - フォームフィールドの一部の機能に基づいて出力を絞り込むには(例えば、一定の大きさを超え、固有のファイルタイプを持つすべてのファイルなど)
-F filter
オプションを使用します。 fields
引数に指定されたフィールドの集合に出力を限定するには、-T fields
オプションを使用します。 フィールド名のリストはスペースまたはカンマで区切ることができます。
ヘッドタイプのフィールド(headTime
など)は、ファイル引数に与えられたファイルリビジョンの情報を返します。 特定のリビジョンが指定されていない場合、最新リビジョンの情報を返します。
フォームフィールド
表示されるフィールドは、選択したファイルによって異なります。
フィールド名 | 説明 | 例/備考 |
---|---|---|
|
名前に関する属性値。 |
|
|
|
|
|
ファイルのローカルパス(デフォルトはローカルシンタックス。 ファイルに特殊文字( |
(または、Helixサーバシンタックスでは |
|
ファイルのディポパス。 ファイルに特殊文字( |
|
|
移動元/移動先ファイルのディポ内でのファイル名 |
|
|
ファイルのローカルパス |
|
|
ファイルが現在のクライアントワークスペースにマップされている場合に設定します |
|
|
ファイルが保留されている場合に設定します |
|
|
最新リビジョンで実行された操作(ディポ内に存在する場合) |
|
|
最新リビジョンのチェンジリスト番号(ディポ内に存在する場合) |
|
|
最新リビジョンの番号(ディポ内に存在する場合) |
|
|
最新リビジョンのタイプ(ディポ内に存在する場合) |
text、 |
|
最新リビジョンの文字セット |
unicodeファイル用 |
|
最新リビジョンのチェンジリストの日付(ディポ内に存在する場合)。 時刻は、1970年1月1日の00:00:00 UTCからの秒数で測定されます。 |
919283152は、1999年前半の日付 |
|
最新リビジョンの更新時刻(クライアントにおいてサブミット前にファイルが最後に更新された時刻。ディポ内に存在する場合)。 |
919280483は、1999年前半の日付 |
|
移動されたファイルの最新リビジョン |
|
|
最後にワークスペースに同期されたリビジョン(ワークスペース内に存在する場合) |
|
|
チェンジリストのコメント( |
Helixサーバチェンジリスト |
|
ファイルのMD5ダイジェスト( |
32桁の16進数。 クライアントワークスペースに同期されたときのファイルの状態に関係なく、圧縮されていない標準化された(UNIXの改行規則)バージョンのディポファイルに基づきます。 |
|
ファイルのバイト数( |
クライアントワークスペースに同期されたときのファイルの状態に関係なく、圧縮されていない標準化された(UNIXの改行規則)バージョンのディポファイルに基づきます。 |
|
ファイルを作業状態にした操作(ワークスペース内で作業状態にした場合) |
|
|
作業状態にしたファイルのタイプ(ワークスペース内で作業状態にした場合) |
Helixサーバのファイルタイプ |
|
作業状態になっているファイルの文字セット |
(unicodeファイルの場合) |
|
ファイルを作業状態にしたユーザ(ファイルが作業状態になっている場合) |
Helixサーバユーザ名 |
|
作業状態になっているリビジョン(作業状態になっている場合) |
|
|
作業状態になっているチェンジリストの番号(ワークスペース内で作業状態になっている場合) |
|
|
衝突解決済みの反映記録の数(存在する場合) |
|
|
衝突未解決の反映記録の数(存在する場合) |
|
|
再度衝突解決が可能な反映記録の数(存在する場合) |
|
|
同じファイルを作業状態にしている他のユーザの数(該当するユーザがいない場合は空白) |
1, ... otherOpen 3 ...... otherOpen0 user1@ws1 ...... otherOpen1 user2@ws2 ...... otherOpen2 user3@ws3 |
|
同じファイルを作業状態にしている個々のユーザに対し、そのファイルを作業状態にしているワークスペースとユーザを表示します。 |
|
|
他のユーザがファイルをロックしている場合はNullを表示し、それ以外の場合は非表示になります。 |
|
|
同じファイルをロックしている個々のユーザに対し、そのロックを保持しているクライアントとユーザを表示します。 |
一度に1ユーザのみファイルのロックが可能であるため、 |
|
同じファイルを作業状態にしている個々のユーザに対し、実行された操作を表示します。 |
|
|
ファイルを作業状態にしているすべてのチェンジリストに対し、そのチェンジリストを表示します。 |
75612 |
|
ファイルが作業状態になっているすべてのチェンジリストに関する名前の属性値を示します。 |
|
|
|
|
|
現在のユーザがファイルをロックしている場合はNullを表示し、それ以外の場合は非表示になります。 |
|
|
それぞれ作業中の、反映操作、ベースファイル、ベースリビジョン番号、反映元ファイル、開始リビジョン、終了リビジョン。 |
作業中の反映記録情報の場合は、 |
|
検査されたファイルの数(ソートされている場合)。 |
|
オプション
|
表示される属性を、指定された |
|
指定のチェンジリスト番号以降に影響を受けたファイルのみを表示します。 この操作を実行すると、影響を受けるファイルのリビジョン範囲を使用する場合よりも、処理時間が大幅に短縮されます。 |
|
指定のチェンジリスト番号により影響を受けたファイルのみを表示します。 このオプションを使用すると、影響を受けるファイルのリビジョン範囲を指定する場合よりも、処理時間が大幅に短縮されます。 このオプションを |
|
インデックスを使用したフィルタリングのパフォーマンスは、最適化されません。 |
|
スクリプトの作成または自動レポート処理の目的で、ファイル引数リストについてのファイル情報を、有効なリビジョン番号とあわせて完全なディポシンタックスでレポートします。 これらの必要条件を満たさないファイル指定は、暗黙的に無視されます。 |
|
fstatの出力を |
|
|
|
サーバ上のアーカイブファイルのパス、リビジョン、タイプ、絶対ローカルパス、相対ローカルパスを出力します。 このオプションを指定するには、admin権限が必要になります。 |
|
属性の要約を出力します。 |
|
16進数でエンコードされた属性値を出力します。 |
|
指定されたファイルのすべてのリビジョンについて、 |
|
p4 fstat -e shelvedChange -Rs -Ol は、指定された変更について保留中のファイルのサイズと要約をレポートします。 |
|
|
|
現在ワークスペースで作業状態になっているファイルの作業中の反映記録データを表示します。 |
|
クライアントワークスペースデータ(すなわち |
|
出力を逆順でソートます。 |
|
出力を、現在のワークスペースにマッピングされているファイルに制限します。 |
|
出力を、haveリストのファイル、すなわち現在のワークスペースに同期されているファイルに制限します。 |
|
出力を、最新リビジョンではないリビジョンで作業状態になっているファイルに制限します。 |
|
出力を、現在のワークスペースで作業状態のファイルに制限します。 作業中の変更を取得するには、このオプションを使用する必要があります。 |
|
出力を、衝突解決済みの作業状態のファイルに制限します。 |
|
出力を、保留中のファイルに制限します。 p4 fstat -e shelvedChange -Rs -Ol は、指定された変更について保留中のファイルのサイズと要約をレポートします。 |
|
出力を、衝突未解決の作業状態のファイルに制限します。 |
|
日付でソートします。 |
|
所有リビジョンでソートします。 |
|
最新リビジョンでソートします。 |
|
ファイルサイズでソートします。 |
|
ファイルタイプでソートします。 |
|
|
|
データを表示する際にアンロードディポ内のファイルを含みます。 詳細については、「 |
|
詳細については、「グローバルオプション」を参照してください。
|
使用上の留意点
ファイル引数にリビジョン指定子を使えるか? | ファイル引数にリビジョン範囲を使えるか? | 最低限必要なアクセスレベル |
---|---|---|
使用可 |
使用可 |
|
フィルタ
ファイルのリストを、特定の基準を満たすファイルに限定するには、p4 fstat -F filter
を使用します。
p4 fstat
により表示されるどのフォームフィールドでも、論理演算子の使用が可能です。 通常の比較演算子(=
、>
、<
、>=
、<=
)も使用可能です。 正規表現マッチングは、正規表現マッチング演算子(~=
)によりサポートされています。
次のフィルタ式は、headType
フィールドがtext
に設定されている、特定のサイズのファイルをフィルタします。
-F "fileSize > 100000 & headType=text"
fstat
で使用されるフィルタでは、大文字と小文字が区別されます。 スペースで区切られたすべての英数文字列(句読記号が埋め込まれた単語を含む)は、単語として索引付けされます。
フィルタ内で検索語の間にスペースがあると、ブール演算子のANDとして扱われます。 任意のキーと値のペアを含むファイルを検索するには(ブール演算子OR)、それぞれの語を「|」で区切ります。
アンパサンド(&
)文字もブールのANDとして使用可能です。ブール演算子は(高優先度から低優先度の順に) &
、|
、スペースの順で値を結合します。 グループ化の優先順位を変更するには、括弧を使用します。
さらに、NOT演算子(^
)を使用して、一部の比較の意味を打ち消すことができます。
検索結果は、特定フィールド内の値をフィルタシンタックス「
」によりマッチングすることで絞り込みが可能です。 fieldname
=value
value
は、英数字および句読記号を含む単一の字句でなければなりません。
ワイルドカード「*
」により、語の部分マッチングが可能です。 フィルタ「
」は、「fieldname
=string*string
」、「stringy
」、「stringlike
」などに一致します。
日付フィールドは、フィルタ日付を
またはyyyy
/mm
/dd
の形式で表すことによりマッチングが可能です。 特定の時刻が指定されていない場合、等価演算子(yyyy
/mm
/dd
:hh
:mm
:ss
=
)はその日付に一致します。
フィルタ式演算子である文字を含むテキストを検索するには、当該文字をバックスラッシュ(\
)文字でエスケープします。 バックスラッシュ文字を照合するには、もう1つのバックスラッシュでエスケープします(\\
)。 バックスラッシュを使用して検索テキストをエスケープする特殊な文字は2種類あります。Helixサーバの「...
」ワイルドカードは\...
によりエスケープが可能であり、空のフィールドは\0
を用いて検索できます。
これらの演算子による動作は、比較対象となるフィールドのタイプにより異なります。 fstat
が処理するフィールドは、すべてテキストフィールドです。 等価演算子(=
)または大文字小文字区別なし等価演算子(~=
)は、値として指定された語が指定フィールド内に見つかった場合に、そのファイルと一致します。 このタイプでは関係演算子の用途は限定的で、指定フィールド内のいずれかの語が、供給された値と一致する場合にファイルと一致します。 関係演算子は常に大文字と小文字を区別します。 例えば、チェンジリストにあるtext
フィールドのdesc
にbug not fixed
という語句が含まれていて、フィルタが「desc<fixed
」である場合、bug<fixed
であることから、このファイルはフィルタに一致します。
例
|
|
|
チェンジリスト20でのファイルのチェックイン後に影響を受けた、すべての |
|
クライアントワークスペース情報行( |
|
クライアントワークスペース情報行は表示しませんが、 |
|
|
|
パスにバックスラッシュが含まれている場合は、それらをバックスラッシュでエスケープします。 |
|
正規表現修飾子 |
|
長さが1024バイトに満たない、 |
|
|
関連コマンド
各ファイルに関する追加の情報を読み取る |
|
変更の説明を含むファイル情報を表示する |