最近、行52に問題があることを知らせるエラーを受け取りました。実際に行をカウントするのではなく、行を見つけるための最良の方法を学習しようとしています。
Windowsでは、 Notepad ++ を頻繁に使用して、行を直接左に表示したため、ユーザーは探している特定の行に簡単にスクロールできました-しかし、Linuxではこのオプションが表示されません。
おそらく特定のアプリケーションが必要ですか?
UPDATE:現在、ソフトウェアストアを開くことができず、デフォルトのnano
とgedit
しかありません。したがって、ソフトウェアのインストールを必要としないソリューションへの回答を制限してください。
**注:**ある種の「文字列」を見つけるつもりはありません。文字列が表示される行NUMBERをすばやく見つけることを探しています。
GUIアプローチを探している場合は、デフォルトのテキストエディターgeditで行番号を表示できます。これを行うには、[編集]-> [設定]に移動し、[行番号を表示する]ボックスにチェックを入れます。
また、特定の行番号にジャンプすることもできます Ctrl+I。
テストファイルを作成しましょう。
$ seq 100 >file
次に、52行目を表示します。
$ sed -n 52p file
52
または:
$ awk 'NR==52' file
52
または、vim
でファイルを開いている場合は、52G
と入力して52行目にジャンプできます。
ファイルの名前がfile.txt
であるとします。行、列、および文字カウントが表示されているnano
のファイルを編集するには、実行します
nano -c file.txt
これは、21行のファイルの7行目にカーソルがある場合のnanoの外観です。
less
でファイルを表示できます。 less -N
を使用して行番号を表示し、「52
」をless
に入力して52行目に移動します。man less
を参照してください。
または、vim
エディター(vim thefile
と入力)でファイルを開き、「:52
」と入力すると52行目が表示されます。man vim
を参照してください
vi
またはvim
:set nu
は行番号をオンにします
:set nonu
は行番号をオフにします
52gg
は52行目に移動します
52G
も52行目に移動します
みなさん、私たちの多くはこれを完全に考えすぎたと思います。コメントと回答を読み続けると、ウィンドウの下部を見ると、基本的なテキストエディターが現在の行と列を示していることがわかりました。 :/
ばかげてる
この仕事に適したツールはgrep
です。 grep -i -n 'string'
を使用すると、特定の文字列を検索し、それがどの行にあるかを調べることができます。
JavaコンパイラがSystem.out.println("Hello World")
行にセミコロンまたはそのようなものがないというエラーを報告するとします。
私ができることはcat helloworld.Java | grep -i -n 'hello world'
そして、これは7: System.out.println("Hello World!")
を返します。ここで、7:はコロンを区切り文字とする行番号です。
または、nano +7,0 helloworld.Java
のように特定の行と列にカーソルを置いてnanoを開始することもできます(ちなみに、これはman nano
の最初のオプションの1つです)