Tôi hoàn toàn mới ở Bash nhưng tôi dường như không thể tìm cách để làm cho nó làm những gì tôi muốn.BASH: chương trình đệ quy để thay thế văn bản trong một cây các tập tin
Hãy tưởng tượng bạn có một thư mục cây với 2 tác phẩm: /top.php và /test/bottom.php
Làm thế nào để thực hiện chức năng nhìn của tôi và thay thế nói "hello" vào "bonjour" ở/đầu .php AND trong /test/bottom.php?
Cho đến nay cách duy nhất tôi đã tìm thấy để làm điều này là bằng cách gọi chức năng tương tự hai lần với một mức độ sâu khác nhau:
find ./*.php -type f -exec sed -i 's/hello/bonjour/' {} \;
find ./*/*.php -type f -exec sed -i 's/hello/bonjour/' {} \;
Chắc chắn có một cách đệ quy để làm điều này trong một dòng?
thể bản sao của [Awk/Sed: Làm thế nào để làm một recursi ve tìm/thay thế một chuỗi?] (http://stackoverflow.com/questions/1583219/awk-sed-how-to-do-a-recursive-find-replace-of-a-string) – Pureferret