Nano-ファイルの終わりにジャンプ


37

いくつかの長いログファイルがあります。で最後の行を表示できますtail -n 50 file.txtが、時には最後の行を編集する必要があります。

でファイルを表示するときに、ファイルの最後に直接ジャンプするにはどうすればよいnanoですか?


4
試してくださいvim:-P
Hunter.S。Thompson

5
@ Hunter.S.Thompsonこれは非ハードコアユーザーを対象としていました(笑)
Marko Pacak

@ Hunter.S.Thompsonそれは動作しません!ユーザー定義のコマンドを使用しています!しかし、今vimではポータブルな方法で試してくださいG
Volker Siegel

1
@VolkerSiegelあなたが皮肉なのかどうかはわかりませんが、ユーザー定義のコマンドではありません。それは絵文字です。ユニコードが雑草を吸わせる前に、私たちはこれらのものを使用していました。
-NieDzejkob

もちろん皮肉だよ!:私はあなたのコマンドを試してみました:よりも、オープンコマンドラインに-Pと入力します。それが私が得たものです:「E464:ユーザー定義コマンドのあいまいな使用」。ではごきげんよう!
フォルカーシーゲル

回答:


52

でファイルを開きますnano file.txt

次にCtrl+ _を入力してからCtrl+V


24
Ctrl + W、Ctrl + Vを実行することもできます
psmears

バージョンに依存する@psmears。v2.4にはショートカットがあります。現在のバージョンv4.0には、Markoが言及しているショートカットがあります。とてもうるさい。
Mausy5043

@ Mausy5043:少なくとも2.4までのバージョンには両方のショートカットがあります。バージョン4.0では、面倒なCtrl + W、Ctrl + Vが削除されたようです。Ctrl + W、Ctrl + T、Ctrl + Yがあり、少なくとも文字キー上にありますが、より長いです:-(
psmears

これらのショートカットは、Windows / Puttyではあまりうまく機能しません
Eric Grange

22

多くのエディターは、コマンドラインでNNN行に直接ジャンプするオプションをサポートしています。幸いなことに、指定された行番号がファイルの終わりを超えている場合、最後にジャンプするように見えるので、次のようなものを使用できます。+NNNnano

nano +999999 file

これはでも機能しますjoeが、たとえばlessVIMでは機能せず、EOFを超えると文句を言います。(少なくとも私のシステム上のもの。それらless +G filevi +$ file動作します。)

もちろん$EDITOR +$(wc -l file) file、ほとんどのエディターではおそらくこのようなものが機能しますが、それは少しばかげており、ファイルを2回読み取る必要があります。


または、nanoがすでに開いている状態で、<kbd> Alt / <kbd> + <kbd> G </ kbd>を使用して99999を入力します
Eric Grange

11

組み込みのNanoヘルプ(^G)から:

M-\   (^Home)   Go to the first line of the file
M-/   (^End)    Go to the last line of the file

だから、プレスAlt+は\に移動し、最初の行やプレスAlt+ /に行き、最後の行

  • これは、vimgg(start)またはG(end)と同等です。
  • これは、Ctrl+ HomeまたはCtrl+ Endが動作するはずであることも示していますが、それは私のために働いたことはありません コンソール/デスクトップでネイティブに動作するようですが、PuTTYを使用したSSH経由では動作しません。
  • 私がこれを覚えているのは/、キーボードの下部と\上部の近くです。

あなたがしたい場合は、コマンドを、あなたはあなたの中の関数を書くことができ.bashrcたり.bash_aliasesから行数を使用しますwc

function nano-end {
    # if the file exists, jump to the end
    # otherwise, just open an empty nano
    [ -f "$1" ] && nano +$(wc -l "$1") || nano
}

nano-end filename最後の行までファイルを開くために入力してください!


3

Ctrl+ エディタのEnd最新(コンパイル済み)バージョンを使用している場合、+ は機能していますnano

方法がわからない場合は、オプション付きのNanoエディターのコンパイルを読んでください。

たとえば、Ubuntu 18.04に基づく新しいシステムでは、そのようなバージョンがすでに存在することに注意してください。

変更ログから:

2017年4月12日-GNU nano 2.8.1

... ^ Homeと^ Endをファイルの先頭と末尾に移動します(これらのキーストロークをサポートする端末上)...

PuTTY vs Cygwin

私はPuTTYをインストールしていません。ここでは、これらのキーの組み合わせがWindows 10 + PuTTY + SSH + nano> 2.8.1では機能しないという他の主張に頼らなければなりません。

一方、Cygwinがあり、Windows 10 + Cygwin + SSH + nano> 2.8.1は正常に動作します。


@ghaberek Cygwinの代替アプローチの詳細については、私の最新の編集をご覧ください。
LinuxSecurityFreak

2

OPは、の最後の行にジャンプするための回答を追加することを望んでいvimます。

ESC+ ShiftGは、最後の行の先頭に移動します。

ESC+ ShiftGAは最後の行の最後に移動し、挿入モードがアクティブになります。


挿入モードでこれを実行する場合は、実行しますC-o G。vimを正しく使用している場合は、そうする必要はありません
...-NieDzejkob

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.