Я был в процессе создания класса User
, где один из методов был get_privileges();
.Как изменить все вхождения слова во все файлы в каталоге
После нескольких часов хлопнув головой в клавиатуру, я, наконец, обнаружил, что предыдущий кодировщик, который я унаследовал эту конкретную базу данных по буквам слово «привилегии», как «privelages» в базе данных MySQL, и, таким образом, также везде в сотнях файлов, которые обращаются к этим «privelages», это написано именно так.
Есть ли способ в Linux (Ubuntu Server ), что я могу пройти через каждое место в папке /var/www
и заменить «privelages» с «привилегий», так что я не приходится иметь дело с этой опечаткой и кодом вокруг него?
Спасибо - для людей на Mac с BSD sed. Вам нужно добавить расширение к аргументу -i. Так же: 'sed -i" "'s/prive ...' – xer0x
Если вы хотите запустить 'sed' только файлы, содержащие орфографическую ошибку (которую вы хотите, если ваш проект содержит тысячи файлов) , вы можете сделать 'grep -l -r" privelages "/ var/www | xargs -I "@" sed -i 's/privelages/privileges/g' @ ' –
с использованием grep, а затем sed, вероятно, хуже, чем просто использование sed, поскольку это означает открытие и чтение каждого файла дважды – cegfault