機械制御/振動騒音
IR情報 会社情報

PERFORCEテクニカルノート041

image_toyo_ss_img_perforce_title_perforce.gif.gif
テクニカルノート041  
image_toyo_ss_img_all_line_yellow.gif.gif
image_toyo_common_spacer.gif.gif
特殊文字の使用
特殊なシェル文字とp4コマンド

image_toyo_common_spacer.gif.gif
タスク
image_toyo_common_spacer.gif.gif
p4コマンドラインで特殊文字を取り扱うには、どのようにすればよいでしょうか
image_toyo_common_spacer.gif.gif
解決策
image_toyo_common_spacer.gif.gif
PERFORCEは * および #の文字をファイル指定において使用します。これらの文字は多くのコマンドシェルにおいて特別な意味があり、p4コマンドでは引用符を使用する必要がある場 合があります。(UNIXでは単一引用符を使用し、Windows MS-DOSシェルでは二重引用符を使用します。)
image_toyo_common_spacer.gif.gif
# シンボルの使用例
image_toyo_common_spacer.gif.gif
p4 sync #none
                  

image_toyo_common_spacer.gif.gif
このコマンドはすべてのディポファイルをワークスペースから削除するはずです。そうではなく、ワークスペース全体を最新リビジョンに同期するという処理が行われた場合は、コマンドシェルで # がコメント文字として解釈されたためです。このような場合、次のコマンドを実行してみましょう。
image_toyo_common_spacer.gif.gif
p4 sync '#none'
                  

image_toyo_common_spacer.gif.gif
アスタリスクの使用例
image_toyo_common_spacer.gif.gif
あるいは、例えば次のようなコマンドで、
image_toyo_common_spacer.gif.gif
p4 files stuff/*
                  

image_toyo_common_spacer.gif.gif
「ファイルが見つかりません」と出力される場合、コマンドシェルにおいてPERFORCEが感知するよりも前に * ワイルドカードを拡張しようとしている可能性があります。引用符の使用方法はいくつか考えられます。例を示します。
image_toyo_common_spacer.gif.gif
MS-DOS  p4 files "stuff/*"
        p4 files stuff/"*"

Unix    p4 files 'stuff/*'
        p4 files stuff/'*'
        p4 files stuff/*
                  

image_toyo_common_spacer.gif.gif
また、PERFORCEワイルドカードの %1 を使用することもできます。これは * と同じ意味ですが、ほとんどのシェルでは特殊な意味を持ちません。
image_toyo_common_spacer.gif.gif
p4 files stuff/%1
                  

image_toyo_common_spacer.gif.gif
(これは、%1 が特殊な意味を持つ MS-DOS バッチスクリプトでは機能しないことに注意してください。)
image_toyo_common_spacer.gif.gif
二重の順スラッシュに関する注意
image_toyo_common_spacer.gif.gif
PERFORCEでは、ファイルパスの参照の際に二重に組み合わせた順スラッシュ文字 "//" を使用することがよくあります。 //文字の組み合わせは、ディポまたはクライアント・ワークスペースのパスではなく、汎用命名規則(Universal Naming Convention:UNC)のパスを参照しているとシェルに解釈される可能性があります。 //depot または //clientnameの構文を使用したとき、PERFORCEコマンドから結果を取得するのに異常に長く時間がかかる場合は、パス文字列全体を引用符で囲んでみてください。一 般に、この問題の影響を受けやすいのはWindows環境でのUNIXシェルだけです。その他のネットワークの問題に関連する遅延については、NOTE040「ネットワークの問題の切り分け」を参照してください。
image_toyo_common_spacer.gif.gif
image_toyo_ss_img_all_btn_yellow_bgwhite2.gif.gif戻る

PAGE TOP