バッシュトリックスヘッダー

Linuxターミナルの使い方は、コマンドを入力するだけではありません。 これらの基本的なトリックを学ぶと、ほとんどのLinuxディストリビューションでデフォルトで使用されるBashシェルを習得する準備が整います。

これは経験の浅いユーザーのためのものです–上級ユーザーの多くはすでにこれらのトリックをすべて知っているはずです。 それでも、見てみましょう–途中で見逃したものがあるかもしれません。

タブ補完

タブ補完は必須のトリックです。 これは時間の節約になり、ファイルやコマンドの正確な名前がわからない場合にも役立ちます。

たとえば、「really long file name」という名前のファイルが現在のディレクトリにあり、それを削除したいとします。 ファイル名全体を入力することもできますが、スペース文字を適切にエスケープする(つまり、各スペースの前に\文字を追加する)必要があり、間違いを犯す可能性があります。 rm rと入力してTabキーを押すと、Bashは自動的にファイル名を入力します。

もちろん、現在のディレクトリに文字rで始まる複数のファイルがある場合、Bashはどちらが必要かわかりません。 現在のディレクトリに「本当に非常に長いファイル名」という名前の別のファイルがあるとします。 Tabキーを押すと、ファイルが両方とも先頭であるため、Bashは「really \」の部分を埋めます。 その後、もう一度Tabキーを押すと、一致するファイル名のリストが表示されます。

タブ補完

目的のファイル名を入力し続け、Tabキーを押します。 この場合、「l」を入力してTabをもう一度押すと、Bashが目的のファイル名を入力します。

これはコマンドでも機能します。 必要なコマンドはわかりませんが、「gnome」で始まるコマンドを知っていますか? 「gnome」と入力し、Tabキーを押してリストを表示します。

パイプ

パイプを使用すると、コマンドの出力を別のコマンドに送信できます。 UNIXの哲学では、各プログラムは1つのことをうまく行う小さなユーティリティです。 たとえば、lsコマンドは現在のディレクトリ内のファイルを一覧表示し、grepコマンドは指定された用語の入力を検索します。

これらをパイプ(|文字)と組み合わせると、現在のディレクトリでファイルを検索できます。 次のコマンドは、「word」という単語を検索します。

ls | グレップワード
配管

ワイルドカード

*文字(つまり、アスタリスク)は、何にでも一致できるワイルドカードです。 たとえば、「本当に長いファイル名」と「本当に非常に長いファイル名」の両方を現在のディレクトリから削除したい場合は、次のコマンドを実行できます。

rm本当に*名前

このコマンドは、「really」で始まり「name」で終わるファイル名のすべてのファイルを削除します。 代わりにrm *を実行した場合、現在のディレクトリ内のすべてのファイルが削除されるため、注意してください。

ワイルドカード

出力リダイレクト

>文字は、コマンドの出力を別のコマンドではなくファイルにリダイレクトします。 たとえば、次の行はlsコマンドを実行して現在のディレクトリ内のファイルをリストし、そのリストを端末に出力する代わりに、現在のディレクトリの「file1」という名前のファイルにリストを出力します。

ls> file1
バッシュトリックスヘッダー

コマンド履歴

Bashは、入力したコマンドの履歴を記憶しています。 上矢印キーと下矢印キーを使用して、最近使用したコマンドをスクロールできます。 historyコマンドはこれらのコマンドのリストを出力するので、それをgrepにパイプして、最近使用したコマンドを検索できます。 Bashの履歴で使用できる他の多くのトリックもあります。

歴史

〜、. &..

〜文字(チルドとも呼ばれる)は、現在のユーザーのホームディレクトリを表します。 したがって、cd / home / nameと入力してホームディレクトリに移動する代わりに、代わりにcd〜と入力できます。 これは相対パスでも機能します。cd〜/ Desktopは現在のユーザーのデスクトップに切り替わります。

同様に、 は現在のディレクトリを表し、..は現在のディレクトリの上のディレクトリを表します。 したがって、cd ..はディレクトリを上に移動します。 これらは相対パスでも機能します。デスクトップフォルダーにいて、デスクトップフォルダーと同じディレクトリにあるドキュメントフォルダーに移動したい場合は、cd ../Documentsコマンドを使用できます。

キャラクター

バックグラウンドでコマンドを実行する

デフォルトでは、Bashは現在のターミナルで実行するすべてのコマンドを実行します。 通常は問題ありませんが、アプリケーションを起動してターミナルを使い続ける場合はどうでしょうか。 「firefox」と入力してFirefoxを起動すると、Firefoxはターミナルを引き継ぎ、閉じるまでエラーメッセージやその他の出力を表示します。 コマンドの最後に&演算子を追加して、Bashがプログラムをバックグラウンドで実行するようにします。

Firefox&
バックグラウンドプロセス

条件付き実行

Bashで2つのコマンドを次々に実行することもできます。 2番目のコマンドは、最初のコマンドが正常に完了した場合にのみ実行されます。 これを行うには、両方のコマンドを&&または2つのアンパサンドで区切って同じ行に配置します。

たとえば、sleepコマンドは秒単位の値を取り、カウントダウンして、正常に完了します。 単独では役に立ちませんが、しばらくしてから別のコマンドを実行できます。 次のコマンドは5秒間待機してから、gnome-screenshotツールを起動します。

スリープ5 && gnome-screenshot

共有するトリックは他にありますか? コメントを残して、あなたの仲間の読者を助けてください!