Cシェルスクリプト:2つの文字列を比較するには?

Cシェルスクリプト:2つの文字列を比較するには?

私はCシェルユーザーです。

2つのファイルがあります。

ファイル1:

A
B
C
D
E

ファイル2:

A
C
B
D
E

A-Aループ比較、、、、、B-CC-B使用したいですD-DE-Efor

文字列が一致すると、「一致」を印刷します。

出力は次のとおりです。

A A -> match
B C -> " "
C-B -> " "
D-D -> match
E-E -> match

ループをどのように使用しますかfor

ベストアンサー1

paste以下は、このコマンドを使用して2つのファイルをリストに編成するサンプルスクリプトです。

A-A
B-C
...

次に、結合された各文字列を2つの別々の部分に解析し、それを変数f1sumに保存しますf2

#!/bin/csh

foreach i (`paste -d"-" file1 file2`)
  set f1=`echo $i | cut -d"-" -f1`
  set f2=`echo $i | cut -d"-" -f2`
  if ($f1 == $f2) then
    echo "$f1 $f2 -> match"
  else
    echo "$f1 $f2 -> "'" "'
  endif
end

残りのコードは標準Cシェルです。

はい

$ ./cmd.csh
A A -> match
B C -> " "
C B -> " "
D D -> match
E E -> match

引用する

おすすめ記事