0
私は正規表現を使用して文字列と一致させ、出力を変数に格納して再利用する必要がある1つのbashスクリプトを作成しています。
./check.sh:MET-3-getを発行-ID-から分岐ここ変数にgrep出力の値を格納する方法
は私のスクリプトは、私は、この多くの方法を試してみましたが、私はエラーを取得しています、
#!/bin/sh
NAME="MET-3-get-code-from-string"
por="$($NAME | grep -P -o -e '(?<=MET-).*?(\d+)')" #this should store 3 in variable por
echo $por
です-name:見つからない
個別のgrepコマンドを実行してからyesにすると、正常に動作しています。しかし、私は出力を格納することはできません。
私も試してみました:
por=$($NAME | grep -P -o -e '(?<=MET-).*?(\d+)')
por=$NAME | grep -P -o -e '(?<=MET-).*?(\d+)'
および他の多くの同様の参照を。
でも動作しません。誰でも私にこれを助けてもらえますか?私はbashで多くの経験がありません。
ありがとうございました。
por="$(echo "$NAME" | grep -P -o -e '(?<=MET-).*?(\d+)')"
へ
それが働いていたが欠落しています。 AMDありがとうございます:) – rut2