Я успішно використовував таку sed
команду для пошуку / заміни тексту в Linux:
sed -i 's/old_link/new_link/g' *
Однак, коли я спробую це на моєму Mac OS X, я отримую:
"команда c очікує \ з наступним текстом"
Я думав, що на моєму Mac працює звичайна оболонка BASH. Як справи?
Редагувати:
За даними @High Performance, це пов’язано з тим, що Mac sed
відрізняється смаком (BSD), тому моє питання, таким чином, буде, як я повторюю цю команду в BSD sed
?
Редагувати:
Ось фактичний приклад, який викликає це:
sed -i 's/hello/gbye/g' *
sed
бачить "c" у ваших даних як команду. Ви використовуєте змінну? Будь ласка, опублікуйте те, що більш детально відображає фактичну команду та деякі дані, які ви обробляєте. Ви можете отримати просту демонстрацію цієї помилки, зробивши цеecho x | sed c
.