Каждый файл в этом проекте Rails дублируется с -e
и снова с -e-e
, прикрепленным к его концу, как показано ниже. Так же и в моем репозитории GitHub. Но я не могу понять, как это случилось. Любая подсказка? В поиске Google ничего не написано.
-rw-r--r--@ 1 usrname staff 959 Jan 7 02:13 Gemfile
-rw-r--r-- 1 usrname staff 958 Jan 5 01:10 Gemfile-e
-rw-r--r-- 1 usrname staff 958 Jan 5 01:09 Gemfile-e-e
-rw-r--r-- 1 usrname staff 6650 Jan 7 02:13 Gemfile.lock
-rw-r--r-- 1 usrname staff 6650 Jan 5 01:10 Gemfile.lock-e
-rw-r--r-- 1 usrname staff 6650 Jan 5 01:09 Gemfile.lock-e-e
lrwxr-xr-x 1 usrname staff 18 Jan 5 00:37 README.rdoc -> doc/README_FOR_APP
-rw-r--r-- 1 usrname staff 283 Jan 5 01:10 Rakefile
-rw-r--r-- 1 usrname staff 283 Jan 5 01:10 Rakefile-e
-rw-r--r-- 1 usrname staff 283 Jan 5 01:09 Rakefile-e-e
drwxr-xr-x 6 usrname staff 204 Jan 5 00:37 app
drwxr-xr-x 5 usrname staff 170 Jan 5 01:10 autotest
drwxr-xr-x 28 usrname staff 952 Jan 5 01:15 config
-rw-r--r-- 1 usrname staff 173 Jan 5 01:10 config.ru
-rw-r--r-- 1 usrname staff 173 Jan 5 01:10 config.ru-e
-rw-r--r-- 1 usrname staff 173 Jan 5 01:09 config.ru-e-e
Полное объяснение
Рекурсивная команда поиска и замены
find ./ -type f -exec sed -i 's/string1/string2/' {} \;
работает на большинстве Linux, но выдает ошибку на Mac OS X. Следующий вариант запускается, но создает ненужные файлы резервных копий '-e'.
find ./ -type f -exec sed -i -e 's/string1/string2/' {} \;
Это фактическая команда, которая работает, как и ожидалось, на Mac OS X:
find ./ -type f -exec sed -i "" 's/string1/string2/' {} \;