Bashのヒントとコツ

初心者の場合、 bashは多くのLinuxディストリビューション(Fedora、Ubuntu、Redhatなど)のデフォルトのコマンドシェルです。Linuxファミリのオペレーティングシステムを使用する場合、bashもおそらく使用するでしょう。 このため、以下では一般的なbashの問題とそれらを解決する簡単な方法をまとめました。

1.チームの歴史の喪失

ターミナルウィンドウを開いていくつかのコマンドを入力し、2番目のウィンドウを開いた場合、2番目のウィンドウのbashコマンドの履歴には最初のコマンドが含まれません。 さらに、最初の端末を閉じてから2番目の端末を閉じると、最初の端末からのコマンドの履歴が2番目の端末によって上書きされます。 二重に不快です!

これは、各コマンドの後ではなく、端末が閉じられたときにのみコマンドの履歴が記録されるという事実によるものです。 これは修正できます。

これを行うには、.bashrcファイルを編集します(初心者向け:ピリオドで始まるファイルはすべて非表示です-ユーザー設定を保存するのに役立ちます)。

nano ~/.bashrc

sudoはここでは必要ありません。システムファイルではなくユーザーファイルです。 nanoは好きですが、gedit、kate、mousepad、vi、emacsなどのエディターを使用できます

行を追加

shopt -s histappend

PROMPT_COMMAND = 'history -a'

保存します。 (書き込むにはCtrl-O。「^」はnanoなどのプログラムでCtrlキーを意味します。^ Xは終了します)

そのため、コマンド履歴は古いものに追加され、上書きされることはありません。また、bashプロンプトが表示されるたびに記録が行われます。

2.愚かなスペルミス

追加する

shopt -s cdspell

再び.bashrcで。 したがって、スペルミス(たとえば、etcの代わりにectなど)は修正されます。

3.チーム履歴の重複

私はしばしばcd ..数回続けて入力し、上キーを押して以前に入力したコマンドに戻るとき、ファイルシステムの周りの最適でない動きを常に思い出したくありません。

追加する

export HISTCONTROL="ignoredups"

再び.bashrcに。

またはさらに良い、追加

export HISTIGNORE="&:ls:[bf]g:exit"

これにより、重複、およびlsbgfg 、およびexit fg 、bashコマンドの履歴が読みやすくなります。

4.チーム履歴で壊れた複数行のチーム

追加する

shopt -s cmdhist

.bashrcでは、複数行のコマンドは1行で記述され、編集が容易になります。

5.解説者からの追加のヒント

bashでCtrl-Rを押してから、コマンドの入力を開始します。 したがって、チームの履歴を検索するのは、300回「上」をクリックするよりもはるかに高速です。

で検索することもできます

history | grep "foo"

チーム

cd -

最後にアクセスしたディレクトリに戻ります-何かを変更するためにどこかに行く必要がある場合に便利です。

「Esc」+「。」を押します 最後に言及したオブジェクトを呼び出します。 たとえば、 cat /etc/apt/sources.listと入力してからrmと入力して「Esc」+「。」を押すと、コマンドは自動的に終了します: rm /etc/apt/sources.list 試してみてください!

おわりに

bashコマンドの履歴をより便利にするためのヒントを次に示します。 この点で独自のトリックがある場合は、コメントを追加してください!

Linux経由でロシア語で掘る

Source: https://habr.com/ru/post/J31326/


All Articles