ฉันพยายามแยกค่า (ตัวเลข) ระหว่างสองตัวแปรและเก็บค่าไว้ในตัวแปรอื่น
ฉันใช้คำสั่ง sed แต่ฉันไม่ได้รับผลลัพธ์ใด ๆ
#!/usr/bin/env bash
variable1=`cat $1`
variable2=`echo "$variable1" | cut -c 18`
echo "$variable2"
variable3=`echo "$variable1" | cut -c 60`
echo "$variable3"
string="${variable3}xyz${variable2}"
echo $string
line=`sed -n '/'"$string"'/,/'"$variable2"'/ p' $1`
echo $line
โปรดแนะนำวิธีแยกตัวเลขระหว่าง $ searchString และ $ variable2 ให้พูดระหว่าง$ stringซึ่งก็คือ& xyz! และ$ variable2ซึ่งก็คือ: ! ฉันมี 60 ie & xyz! 60! ดังนั้นฉันต้องสกัด 60
ฉันก็ลองด้วย
line=`sed -nr "s/$string([0-9]+),$variable2/\1/ p" $1`
แต่เมื่อฉัน echoed $ line มันพิมพ์เนื้อหาไฟล์ทั้งหมด
ขอบคุณล่วงหน้า
5
โปรดโพสต์ตัวอย่างที่สมบูรณ์พร้อมเนื้อหาของไฟล์ มันยากที่จะเข้าใจว่าเรื่องนี้เกี่ยวกับอะไร
—
Tomasz