Tôi tin rằng đây có thể là một câu hỏi đơn giản, nhưng tôi đã xem ở khắp mọi nơi và đã thử một số cách giải quyết, nhưng tôi vẫn chưa giải quyết được vấn đề.Sed không hoạt động bên trong tập lệnh bash
Vấn đề mô tả: tôi phải thay thế một nhân vật bên trong một tập tin và tôi có thể làm điều đó một cách dễ dàng bằng cách sử dụng dòng lệnh:
sed -e 's/pattern1/pattern2/g' full_path_to_file/file
Nhưng khi tôi sử dụng cùng một dòng bên trong một kịch bản bash tôi không thể dường như có thể thay thế nó và tôi không nhận được thông báo lỗi, chỉ nội dung tệp mà không có sự thay thế.
#!/bin/sh
VAR1="patter1"
VAR2="patter2"
VAR3="full_path_to_file"
sed -e 's/${VAR1}/${VAR2}/g' ${VAR3}
Mọi trợ giúp sẽ được đánh giá cao.
Cảm ơn bạn rất nhiều vì đã dành thời gian.
sed -e không thay đổi tệp, chỉ hiển thị tệp với trạm biến áp, nhưng tệp không bị thay đổi, trong cả hai trường hợp – chmeee