ターミナルで賢く作業するためのBashのヒントとテクニック集
Linuxユーザーにとって、初めてターミナルを開き、最も効率的で強力かつ柔軟な方法でシステムを操作し始める瞬間は特別なものです。しかし、初めてターミナルに触れるときは、点滅するカーソルと無限の可能性だけが迎えてくれるため、少し敷居が高く感じられるかもしれません。そこで本記事では、ターミナルで「頑張る」のではなく「賢く」作業するためのBashのヒントとテクニックをご紹介します。
aproposでコマンドを検索する
apropos(アプロポス)は、manページ(マニュアル)の説明文をもとにコマンドを検索できるコマンドです。何らかのコマンドのmanページを見たことがある方なら、以下のような表示を目にしたことがあるでしょう。
注目してほしいのは、冒頭の「NAME」セクションです。例えばpingコマンドをaproposで探したい場合は、ターミナルにapropos icmpと入力してEnterキーを押します。大文字小文字は区別されません。これにより、NAMEエントリに「ICMP」という語を含むすべてのコマンドが一覧表示されます。
aproposのもう一つの優れた使い道は、selinuxのような馴染みのないツールの探索です。apropos selinuxを実行すれば、SELinuxとやり取りできるさまざまなコマンドの一覧が得られ、効率的な学習への第一歩となります。
直前のコマンドの一部を置換する
ターミナルでの作業時間を大幅に節約してくれるのが、直前のコマンドの一部を置換する方法です。タイプミスをした場合や、前のコマンドのオプションを変更したい場合には、^キーを使って間違えた単語を指定し、もう一つの^の後に正しい単語やオプションを入力します。
具体例を見てみましょう。「maketecheasier.com」にpingを送り、インターネット接続(DNSを含む)が完全に機能していることを確認したいとします。ところがスペルを間違えるとエラーが発生してしまいます。誤って「maktecheaser.com」(「i」が抜けている)にpingを送ると、うまくいきません。
このような場合は、^maktecheaser.com^maketecheasier.comと入力するだけで、意図したとおりにコマンドが実行されます。これは簡単な例ですが、多数のオプションを持つ長いコマンドを実行した際や、出力・エラーのリダイレクト先を間違えた際にも、複雑なコマンド内で>を>>に置き換えられるのはまさに命綱です。
もう一つの例は、systemdのsystemctlコマンドです。サービスのstart、stop、enable、disableなど、複数のサブコマンドを続けて実行することがよくあります。そんなときは^start^enableのように置換するだけで済み、時間の節約になります。
「!!」で直前のコマンドを再実行する
!!(バンバン)は、直前のコマンドをそのまま呼び出して実行します。一見地味に思えますが、スーパーユーザー権限が必要なコマンドを打ってしまった経験を思い浮かべれば、その有用性が分かるはずです。
分かりやすい例がインストールスクリプトです。「./SCRIPT-NAME.sh」でスクリプトを実行したら、「スーパーユーザー権限で実行してください」と表示されたとしましょう。そんなときはsudo !!と入力してパスワードを入力するだけでOK。手間が大きく省け、この一連の操作が筋肉記憶になれば、以前より素早く処理できるようになります。
直前のコマンドから引数を受け渡す
!$を使うと、直前のコマンドの最後の引数を現在のコマンドに渡せます。さらに少し応用すれば、任意の位置の引数も自由に受け渡せるようになります。
例を挙げましょう。スクリプトを編集するときにnano samplescript.shというコマンドを使ったとします。編集が終わったらスクリプトを実行可能にしたいので、パーミッションを755に変更します。その際、chmod 755 !$とすればファイル名を再入力する必要がありません。さらに、スクリプト名をもう一度使いたい場合は、./!:2で2番目の引数を呼び出せます。
その他の指定方法は以下のとおりです。
!^ - 最初の引数 !* - すべての引数 !:2-$ - 2番目から最後までの引数 !:2-4 - 2番目から4番目までの引数
数字を変えれば好きな引数を取り出せます。Bashはこの方法でおよそ100個近くの引数を保持しているため、こうした単純な繰り返し作業を素早くこなせます。
今回ご紹介したBashのヒントとテクニックを活用して、ターミナルでの作業をよりスマートにしていただければ幸いです。あわせてBashの変数や特殊文字についても学んでおくと、さらに理解が深まるでしょう。
-
Dropboxをもっと便利に!知っておきたい8つの活用ヒントとコツ
テクノロジーが生活に深く浸透するにつれ、データの保存は私たちにとって欠かせない必需品となっています。ファイル、写真、動画、音声など、ほぼすべてのデータがデジタル形式で管理される現代において、ファイル共有・保存サービスとして真っ先に思い浮かぶのがDropboxではないでしょうか。約10年前に登場して以来、Dropboxは大切なデータを安全に守る場所として、多くの人々に信頼され続けています。 Dropboxは、重要なファイルやフォルダをひとつの場所で共有・保存できるモダンなワークスペースのような存在です。クラウドストレージに対応しているため、いつでもどこでもデータへアクセスできる点も大きな魅力と
-
Bingをもっと賢く使いこなすための8つの検索テクニック
ウェブで何かを調べるとき、多くの人はまずGoogleを開きます。もはや「検索する=ググる」という言葉が定着するほど、Googleは検索の代名詞となっています。医学用語の調査から好きな有名人の最新情報まで、Googleなら何でも答えが見つかる――そんなイメージがあるかもしれません。 しかし、検索エンジン市場でGoogleがどれほど支配的であっても、Bingの存在は無視できません。BingはMicrosoftが公式に提供する検索エンジンで、人気やシェアではGoogleに大きく水をあけられています。それでも、その有用性が劣るわけではありません。実はBingには魅力的な機能が数多く搭載されており、中に