何百ものファイルのテキストを見つけて置換する方法を探しています。
Geanyは複数のファイルでテキストを検索できることを知っています。それは良い。しかし、テキストを置き換える方法は?
Geanyは、現在開いているファイルでのみそれを行うようです。 Geanyですべてのファイルを開き、検索文字列を見つけます。
ありがとう
これは、Geanyの複数のファイルのテキストを置き換える方法です。置換する前に複数のファイルでテキストのすべてのインスタンスを検索する場合は、GeanyメニューからSearch-> Findを選択し、ファイル名と行を選択できます。検索語を含むファイルの行番号が、Geanyウィンドウの下部ペインのリストに表示されます。 Geanyの下部ペインのこのリストにファイル名が見つからないGeanyで開いているタブは、一度に1つずつ手動で閉じることができます。または、すべてのタブを開いたままにしておくことができます。交換操作。
これを行うには、プラグインがこの意味で表示されるのを待つか、 terminal を使用します。今のところ、2番目の方法の方が良いと思います。方法を説明します。
特定の文字列が見つかったすべてのファイルをディレクトリ(およびサブディレクトリ)内から開くには、Geanyを開き、メッセージウィンドウからターミナルタブを選択し、内部で次のコマンドを実行します:
grep -rHIF --exclude='/directory_path/*~' -- 'text_to_find' /bin/bash /directory_path/* | geany `awk 'BEGIN {FS="[:]"} {print $1}'`
たとえば、Geanyで/home/radu/bin
ディレクトリにあるすべてのbashスクリプトを開くには、次のコマンドを実行します。
grep -rHIF --exclude='/home/radu/bin/*~' -- '#!/bin/bash' /home/radu/bin/* | geany `awk 'BEGIN {FS="[:]"} {print $1}'`
前のセッションのファイルをロードせずにGeanyの新しいインスタンスでこれらのファイルを開くには、geany
コマンドに-is
引数を使用します。
grep -rHIF --exclude='/directory_path/*~' -- 'text_to_find' /bin/bash /directory_path/* | geany -is `awk 'BEGIN {FS="[:]"} {print $1}'`
Geanyの単一セッションで開く必要のあるすべてのファイルが用意できたので、 Ctrl+H Replaceダイアログを開くには、検索するテキストを挿入し、置換するテキストを挿入して、In Sessionボタンを押します。