これらの時間を節約するショートカットでコマンドラインの忍者になります


コマンドラインは非常に強力ですが、長いコマンドとファイルパスを入力すると、かなり速く退屈になります。ここでは、ほんの数個のキーストロークで長く、退屈な、または複雑なコマンドを実行するショートカットをいくつか紹介します。

オリジナルからリミックスされた画像XKCD

パワーユーザーは、ほんの数個のキーストロークで複雑なタスクを実行する能力があるため、コマンドラインが大好きです。しかし、ショートカットを知らず、すべてを長期にわたって入力する初心者にとっては、それは永遠にかかるように見えるかもしれません(私はちょうど初心者を過ぎて自分自身であり、私はまだこれらのショートカットのほとんどを知りませんでした)。

これらのコマンドは、主に *nixベースのコマンドラインに適用されます。これは、箱から出して、OS XやLinuxなどのシステムに含まれています。 Windowsで使用するには、インストールしますCygwin。 (私たちはCygwin用のWindowsのくだらないコマンドラインを捨てることを強くお勧めします。)

シンプルなキーボードショートカットから内蔵の速記まで、自分で構築してカスタマイズできるコマンドまで、端末にはコマンドラインの作業をスピードアップできる多くの方法があります。必要なコマンドを短縮するために使用できるいくつかのカスタマイズ可能な機能)。

あなたがちょうどコマンドラインを始めたばかりなら、私たちはあなたも私たちをチェックすることをお勧めします初心者向けのコマンドラインプライマー。ヘック、あなたが初心者ではないとしても、それをスキムしてください。あなたが知らなかったいくつかのことを見つけることは間違いありません。これらの主題のいくつかに触れ、ここにも触れています。

基本的なキーボードショートカット

初心者向けガイドでは、いくつかの基本的なキーボードショートカットを調べましたが、そこには、シェルをナビゲートするためだけに非常に直感的ではありませんが、非常に有用なものがかなりあります。また、以前のコマンドを参照したい場合にも役立ちます。

  • 上/下矢印:キーボードの上下矢印は、最後に使用したコマンドを通過します。したがって、実行した2番目のコマンドを実行したい場合は、2回矢印を2回押してEnterを押してください。コマンドを実行する前に編集することもできます。

  • Ctrl+左およびCtrl+右:Ctrlと左または右の矢印キーを打つと、コマンドの引数間でジャンプします。そのため、コマンドの中央でタイプミスがあれば、CTRLと左矢印キーのいくつかのタップですぐにジャンプすることができます。 Mac OS XとWindowsでは、このショートカットはESC+BそしてESC+Fその代わり。これはかなり厄介ですが、OS Xユーザーはできますターミナルの好みから変更します彼らがそうするなら。

  • 家と終わり:キーボードのホームとエンドボタンは、それぞれ現在タイプされているコマンドの開始と終了にカーソルを移動します。これは、たとえばコマンドに入力されたが、最初の単語にタイプミスがあることを認識している場合に役立ちます。左の矢印キーを押し続ける代わりに、家に押して修正してください。同じことをすることもできますCtrl+aそしてCtrl+e、、それぞれ(Mac OS X、Ctrl+AおよびCtrl+Eがこれを行う唯一の方法です)。

  • Ctrl+u:これにより、行全体がクリアされるため、完全に新しいコマンドを入力できます。

  • Ctrl+k:これにより、カーソルの位置から行の端まで行が削除されます。

  • Ctrl+w:これにより、カーソルのみの単語のみが削除されます。

  • Ctrl+r:これにより、具体的なものをコマンド履歴を検索できます。たとえば、含まれている最近のコマンドを検索したい場合nano、Ctrl+Rを押してタイプしますnano。最新のコマンドが表示され、上下の矢印を使用して、コマンドの履歴を使用してサイクリングできます。nanoそれらの中に。

  • タブ:みんなのお気に入りのショートカットの1つがタブを使用して、テキストのラインをオートコンプリートします。だから、あなたが入力したいと言ってくださいcd ~/Dropbox/、入力するだけですcd ~/Dr、タブをオートコンプリートオペックスに押して、1日を続けます。

末端の速記

多くのタイプミスを作成したり、同じコマンドを何度も何度も実行したり、長くて迷惑なファイルパスを扱っている場合でも、端末にはすべてを外出させないように速記がかなりあります。自分自身。ここにいくつかの素晴らしい例があります。

ファイルパス

端末のファイルを使用している場合、システムのフォルダー構造をナビゲートすることで取得できます永遠に。常に長いファイル名を入力することは決して楽しいことではないので、マウスやキーボードを数回タップして、これらの5倍の深いパスをターミナルに入れるいくつかのトリックを紹介します。

ファイルを端子ウィンドウにドラッグします

ハードドライブの奥深くに埋もれたファイルがある場合、その完全なパスを入力すると永遠にかかる可能性があります。それを行う代わりに、Nautilus、Finder、Dolphin、または使用しているファイルマネージャーのフォルダーを開き、ファイルを端末ウィンドウにドラッグすることができます。現在のコマンドにファイルパスを追加します。

ファイルパスの速記

初心者のガイドで簡単に説明しましたが、繰り返します。あなたが言ってくださいcdハードドライブの周りに到達しますが、ファイルパスを何度も入力したくない。同じフォルダーまたはファイルに継続的にアクセスする必要がある場合は、ファイルブラウザーからドラッグすると退屈になる可能性があります。幸いなことに、現在のディレクトリとその親ディレクトリをに置き換えることができます.そして..、 それぞれ。たとえば、あなたの場合cdフォルダーに、次のコマンドを実行すると、1つのフォルダーが上に移動します。

cd ..

そうすれば、ファイルパス全体を再タイプする必要はありません(または、上の矢印を押してフォルダー名を削除します。文字通り数個のキーストロークです)。

これは、長いパスを入力している場合にも機能します。あなたがいると言ってください~/Documents/Workそして、あなたは入りたかった~/Documents/Play。入力できます。

cd ../Play

すぐにそこに着きます。

もう1つの良いショートカットはダッシュです(-)。これにより、最後の作業ディレクトリに戻ります。

cd -

したがって、たとえば、ドキュメントフォルダーで作業している場合(~/Documents)そして、に移動します/etc/簡単に言えば、入力してすぐに切り替えることができますcd -そして、Enterをヒットします。

最後に、ホームディレクトリに戻りたい場合は、引数を追加する必要はありませんcd指示。入力するだけですcdそして、Enterを打つことであなたを家に戻します。

あなたの歴史を使用します

最近使用されたコマンドにアクセスする(または最近使用されたコマンドの小さなバリエーションを実行する)ことは、最終ユーザーがしばしば行う必要があることです。残念ながら、それはターミナルの最も退屈な部分の1つでもあります。これは、まったく同じコマンドを走ったとまったく同じコマンドを再入力したいのですが、1つの小さな違いがありますか?それはすべてのタイプミスを罰のように見せます。幸いなことに、いくつかのかなり素敵な速記があり、そのほとんどは便利なバングシンボル(!)を使用しています。

最も便利なショートカットの1つは使用されています!!あなたが実行した最後のコマンドを表すために。これは、多くの状況で役立ちます。たとえば、ルート特権が必要なが追加することを忘れるコマンドを実行した場合sudo最初まで、コマンドを再タイプする必要はありません。ただ実行:

sudo !!

これにより、root特権を使用して最後に使用したコマンドが実行されます。

実行したいコマンドがあなたの歴史に少し戻っている場合、元の文字列と組み合わせてBANGを使用してそれを見つけることができます。たとえば、使用した最後のコマンドを実行したい場合cat、次のように入力できます。

!cat

あなたがただ最後のものを見たいだけならcatコマンドは、代わりに実行できます。

!cat:p

これにより、そのコマンドを印刷し、歴史の終わりに追加します。あなたがそれを実行したいと決めた場合、あなたはただ入力することができます!!そして、Enterを押します。

最後に実行した別のコマンドを実行したい場合は、同じ議論で、そのためのショートカットもあります。たとえば、以下を使用してフォルダーを作成したばかりだとします。

mkdir /new/awesome/folder

その後cdそのディレクトリには、次のように入力できます。

cd !$

!$最後のコマンドからの引数を表します。

別の一般的な問題は、実行するコマンドを誤って誤って行うことです。走りたいと言ってくださいnano、しかし誤って入力されますnanp

nanp /path/to/a/document/buried/deep/in/the/filesystem

全体を再入力する代わりに、実行することができます。

^nanp^nano

これにより、最初のインスタンスが見つかりますnanp最後の実行コマンドで、それを置き換えますnano

これらのショートカットはすべて大丈夫でダンディですが、historyコマンドはあなたの友達です。あなたが含むあなたが実行したすべての最近のコマンドを見たいならnano、たとえば、実行することができます:

history | grep nano

このようなものに見えるリストが表示されます。

381 sudo nano /etc/NetworkManager/nm-system-settings.conf387 sudo nano /etc/rc.conf388 sudo nano /etc/rc.conf455 sudo nano /boot/grub/menu.lst

その後、そのリストからコマンドを選択できます。実行したいと思います。sudo nano /boot/grub/menu.lst、グレップがコマンドとしてリストします455- そしてそれを使用して実行します:

!455

最後に、特定のコマンドを保持したい場合あなたの歴史の中で、彼らの前にスペースを置くだけです - 私はスペース+nano ~/Documents/WorldDominationPlans.txt

拡張

バックアップやさまざまなファイルタイプなど、ファイルのバリエーションを使用している場合、小さな調整で同じコマンドを入力するのが面倒です。ブレースシンボルを使用します({})、ファイルの複数のバージョンでバッチ操作を簡単に実行できます。

ファイル名の一部の名前を変更したいとします。タイプアウトする代わりにmv /path/to/file.txt /path/to/file.xml、実行することができます:

mv /path/to/file.{txt,xml}

これにより、同じ引数でコマンドが実行されますが、ブレース内の部分が変更された場合にのみ、最初の引数に対応する最初の部分、2番目の引数に対応する2番目の部分です。

この最も一般的な例は、変更を行っているファイルをバックアップするときです。たとえば、あなたがあなたを微調整している場合rc.conf、新しいものが機能しない場合に備えて、バックアップを作成する必要があります。だから、そうするために、あなたはただ実行することができます:

sudo cp /etc/rc.conf{,-old}

コンマの前に何も入れないでください-oldコピーした後のファイル名にcp。新しいファイルがうまくいかず、バックアップされたファイルを元の場所に復元する場合は、以下を使用できます。

sudo mv /etc/rc.conf{-old,}

コンマをブレースのもう一方の端に移動すると削除されます-oldファイルの最後から、元の名前に復元します。

ブレースは、複数のファイルを一度に移動または作成するときにも機能します。たとえば、3つの番号付きディレクトリを作成したい場合は、実行するだけです。

mkdir myfolder{1,2,3}

これにより、MyFolder1、MyFolder2、およびMyFolder3の3つのフォルダーが作成されます。

あなた自身の速記を作る

これらはすべて非常に便利ですが、おそらくあなたができる最も便利なことは、あなた自身のショートカットを構成することです。結局のところ、私たちは皆、何度も何度も実行するいくつかのコマンドを持っていますが、それらは必ずしもすべての人にとって同じではありません。そうするために、編集します~/.bashrc構成ファイル(または、Mac OS X Snow Leopardを使用している場合、~/.bash_profile)。これは基本的なテキストファイルなので、UbuntuのGedit、OS XのTextedit、またはターミナル内のNanoでさえ、好きなものでそれを行うことができます。私たちはこれを行うことについて話しました 数回前、しかし、それは本当にターミナル作業をスピードアップするためにできる最高のことの1つです。

カスタムショートカットを作成するには(anと呼ばれますaliasまたはfunction、あなたはあなたに新しい行を追加したいと思うでしょう.bashrc次の形式を使用してファイル:

alias la='ls -A'

今、あなたが入力するたびにla、端子が実行されますls-a非表示ファイルを含む修飾子。一部のTHSEEはすでに人気のあるLinux分布に組み込まれていますが、他にも多くの便利な分布があります。ここに私たちのお気に入りのいくつかがあります:

alias ll='ls -l'

これにより、ファイルのより冗長なリストが得られますlsそれ自体で行います。 Ubuntuでは、このショートカットはすでに存在していますが、実行されますls -alF

alias desk='cd ~/Desktop'

これにより、デスクトップは数個のキーストロークで作業ディレクトリになります。もちろん、定期的にアクセスするほぼすべてのフォルダーに対してこれを変更できます。

alias up='cd ..'

これにより、ワーキングディレクトリはキーストロークの半分に1つのフォルダーを移動します。

alias emenu='aterm nano -e ~/.e16/menus/user_apps'

これは、編集用のファイルを開くエイリアスの例です。絶えず編集しているファイルがある場合は、これを維持するのに適したファイルです。引用符でよく使用されているファイルへのパスを投げて、キーワードを理にかなっているものに編集します。

alias agi='sudo apt-get install'

これにより、Ubuntuでプログラムをインストールするのははるかに速いです。入力できますagi chromiumたとえば、Chromiumをインストールします。もちろん、あなたが使用している場合Linuxの異なる風味、選択したパッケージマネージャーに置き換えることができます。

alias update='sudo apt-get update'

これにより、Ubuntuのすべてのパッケージが更新されます。

function cdl { cd $1; ls;}

これはきちんとした関数です以前に紹介したことがありますそれは本質的に実行されますcdそしてls同時に。だから、入力してくださいcdl /path/to/folderそして、ターミナルは両方ともあなたの作業ディレクトリを作りますそしてそのコンテンツを1つの倒れた急降下にリストします。


これらは、キーボードのショートカット、速記、およびあなたの生活を楽にすることができるカスタムエイリアスのほんの一例です。そこには本当に1トンがあり、ターミナルを使用しているものに応じて、頻繁に異なるものがあなたにとって有用であることが証明されます。もちろん、あなたはあなた自身を使って作ることができるのでaliasそしてfunction、唯一の制限はあなたの想像力です(あなたがそれほど想像力に富んでいないなら、私たちは時々この辺りにいくつかの良いものを投稿します)。あなたが私たちと共有したいあなた自身のお気に入りを手に入れましたか?コメントで聞こえます。