テキストモードのファイルがあります。
AAAA - BBBB (CCCC) - (DDDD)
私は最初のグループAAAA - BBBBのみを使用することに興味がありました(例:AAAAとBBBB)。以下を使用して「(CCCC)-(DDDD)」を切り出しました.
FIRST_SET="${STRING%% (*}"
「AAAA-BBBB」を教えてください。
生涯2番目の「BBBB」から「AAAA」を抽出することはできません。
よろしくお願いします。
ベストアンサー1
2つのシェル変数に最終結果が必要で、単語をスペースで区切って、単語にスペースが含まれておらず、変数にIFS
デフォルト値があるとしましょう。
$ read -r word1 dash word2 junk <file
$ printf 'word1 = "%s"\nword2 = "%s"\n' "$word1" "$word2"
word1 = "AAAA"
word2 = "BBBB"
ここで使用されるコマンドは、read
最初の単語を変数として読み、word1
2番目の単語を変数として読み込みますword2
。単語間のダッシュは変数として読み取られ、最後のdash
ゴミは名前付き変数に配置されますjunk
。