コロンで区切られたフィールドを分割してアクセスする方法は?

コロンで区切られたフィールドを分割してアクセスする方法は?

このコードは:

foreach line (`cat /etc/group`)
    echo $line
end

返すには 。lineで区切られた4つのフィールドが含まれています:

フィールドを分割して各フィールドの最初のフィールドにアクセスするにはどうすればよいですかline

ベストアンサー1

foreach line ("`cat /etc/group`")
    set fs = ($line:gas/:/ /)
    set f = ($fs)
    echo "$f[1]"
end

tcsh中間変数を省略してfs直接set f = ($line:gas/:/ /)

変数修飾子は、変数のすべての出現を(単純なテキストであり、正規表現は認識されません)に:s/pat/rpl/置き換えます。patこのフラグはすべての発生項目を置き換えるように指示し、このフラグはすべての単語でこれを行うように指示します。rplpatag

生ファイルを使用しcsh/etc/groupファイルにglobメタ文字が含まれている場合は、ループをset noglob/unset noglobペアで囲む必要があります。

おすすめ記事