Tôi có một tập tin
love=/abc
day=abc
night=xyz
afternoon=xyzabc
Tôi đang đọc từng giá trị trong một biến, bây giờ tôi cần thay thế biến thứ 2 bằng một chuỗi cụ thể. như
$1st = "/abc" $replace1 = "/abc/pqr"
$2nd = "abc" $replace2 = "abc1"
$3rd = "xyzabc" $replace3 = "mnpabc"
Tôi đã sử dụng perl -0777 -pi -2 's%$1st%$replace1%' file
này không thay thế dòng 1
Tôi đã sử dụng perl -0777 -pi -e 's/3rd/$replace1/ file
này không dòng thứ 3.
nhưng thời điểm tôi thay thế $ 2 bằng $ thay thế, nó thay thế tất cả những nơi từng có "abc". Làm thế nào tôi có thể hạn chế điều này để chỉ thay thế một yếu tố tại một thời điểm?