Найти и заменить текст в нескольких файлах, используя geany

Я ищу способ найти и заменить текст в сотнях файлов.

Я знаю, что Джани может найти текст в нескольких файлах. Это хорошо. Но как заменить текст?

Джани, кажется, делает это только в том файле, который открыт в данный момент. Как открыть все файлы в Geany, где он находит строку поиска.

Спасибо

3
задан 1 July 2013 в 08:45

2 ответа

  1. Выберите все файлы, которые Вы хотите отредактировать и открыть их с Geany.
  2. От Geany меню выбирают Поиск-> Замена.
  3. Новое окно Replace откроется. Под Replace All раздел выбирают На Сессии как показано в изображении ниже. В этом примере я принял решение глобально заменить строку "искомый текст" строкой "текст замены".
  4. От Geany меню выбирает Файл->, Сохраняют Все.
  5. От Geany меню выбирает Файл-> Близко Весь и закрывает Geany или выбирает Файл-> Выход.

enter image description here

Это - способ заменить текст в нескольких файлах в Geany. Если Вы хотите найти все экземпляры текста в нескольких файлах перед заменой их можно выбрать Поиск->, Находят из меню Geany, и имена файлов и номера строки строк в файлах, содержащих критерий поиска, появятся в списке в нижней области окна Geany. Любые открытые вкладки в Geany, имена файлов которого не найдены в этом списке в нижней области Geany, могут быть вручную закрыты по одному, или можно оставить все вкладки открытыми, так как это не имеет никакого значения к результату операции замены.

2
ответ дан 1 July 2013 в 08:45

Вы можете сделать это, ожидая появления плагина в этом смысле, или используя терминал . Я думаю, что второй способ лучше на данный момент. Я объясню, как.

Чтобы открыть все файлы, в которых найдена определенная строка, из директории (и подкаталогов) откройте Geany, выберите вкладку Terminal в окне сообщений и выполните следующую команду inside:

grep -rHIF --exclude='/directory_path/*~' -- 'text_to_find' /bin/bash /directory_path/* | geany `awk 'BEGIN {FS="[:]"} {print $1}'`

Например, чтобы открыть все скрипты bash, которые есть в моем каталоге /home/radu/bin с Geany, я запускаю следующую команду:

grep -rHIF --exclude='/home/radu/bin/*~' -- '#!/bin/bash' /home/radu/bin/* | geany `awk 'BEGIN {FS="[:]"} {print $1}'`

Geany

Чтобы открыть эти файлы в новом экземпляре Geany без загрузки файлов предыдущего сеанса, используйте -is аргументы для команды geany:

grep -rHIF --exclude='/directory_path/*~' -- 'text_to_find' /bin/bash /directory_path/* | geany -is `awk 'BEGIN {FS="[:]"} {print $1}'`

Теперь, когда у вас есть все файлы, которые вам нужно открыть за один сеанс Geany, нажмите Ctrl + H , чтобы открыть диалоговое окно Заменить , вставьте текст для поиска, вставьте текст для замены и нажмите кнопку в сеансе :

Geany Search & Replace Dialog

0
ответ дан 1 July 2013 в 08:45

Другие вопросы по тегам:

Похожие вопросы: