Bashプログラミング

 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング
  1. BashのPS1変数を極める:機能的でおしゃれなLinuxプロンプトを作る10の実例

    Photo courtesy of f1r3storm85 前回の記事では、Linuxの環境変数であるPS[1-4]とPROMPT_COMMANDについて解説しました。PS1を効果的に活用すれば、コマンドプロンプト上に直接、有用な情報を表示させることができます。 映画『トゥームレイダー』のアンジェリーナ・ジョリーは、謎をスタイリッシュに解き明かすために、あらゆるガジェットや武器を自由に操ります。彼女の装備やスタイルに完全に匹敵するのは難しいとしても、せめて普段使いのLinuxプロンプトくらいは、この記事で紹介する10の実例を使って、高機能かつおしゃれにカスタマイズしてみてはいかがでしょうか。

  2. 【図解】.bash_profile・.bashrc・.bash_login・.profile・.bash_logout の実行順序を徹底解説

    Bash シェルの起動時や終了時には、複数の設定ファイルが決まった順序で読み込まれます。本記事では、以下のファイルがどのような順序で実行されるのかを、擬似コードと実際の検証手順を交えてわかりやすく解説します。 /etc/profile ~/.bash_profile ~/.bashrc ~/.bash_login ~/.profile ~/.bash_logout 対話型ログインシェルの実行順序 対話型ログインシェルを起動した際、これらのファイルは次の擬似コードに示す順序で実行されます。 execute /etc/profile IF ~/.bash_profile exists THEN

  3. bash-supportプラグインでVimをBashスクリプト開発用IDEに変える方法

    本記事は「Vi / Vim Tips and Tricks」シリーズの一環としてお届けします。Linuxシステム管理者やプログラマーの方なら、Bashシェルスクリプトを書く際に、次のような繰り返し作業に手間取った経験があるのではないでしょうか。 ファイルヘッダーの追加 関数やフレームコメントの記述 定型的なコード断片(スニペット)の挿入 構文チェックの実行 関数に関するドキュメントの参照 コードブロックのコメント化、およびコメント解除 「bash-support」Vimプラグインを使えば、これらの作業をすべて簡単かつ迅速に行えます。キーストロークを大幅に削減でき、貴重な時間の節約につなが

  4. Bash文字列操作の実践ガイド – 文字数の取得・部分文字列の抽出・検索・置換

    Bashシェルでは、ドル記号($)に変数名を続けて記述すると、シェルがその変数を実際の値に展開します。この機能は「パラメータ展開」と呼ばれています。 しかし、パラメータ展開にはこれ以外にもさまざまな形式が用意されており、パラメータを展開しながら値を加工したり、展開の過程で別の値に置き換えたりすることも可能です。本記事では、パラメータ展開の仕組みを活用した文字列操作のテクニックを詳しく解説します。 なお、この記事は継続中のBashチュートリアルシリーズの一部です。関連記事として「bash { } 展開」についての解説もぜひ参照してください。 1. Bashシェルスクリプトで文字列の長さを取得する

  5. 例付きで解説!覚えておきたい便利なBashシェル組み込みコマンド15選

    Bashには、シェル自体に組み込まれている(ビルトイン)コマンドが多数存在します。組み込みコマンドを実行すると、Bashシェルは他のプログラムを呼び出すことなく、即座にそのコマンドを実行します。外部コマンドは通常、実行時にプロセスをフォークする必要があるため、組み込みコマンドの方が高速に動作します。この記事では、実用的なBashシェル組み込みコマンドを、具体例とともに15個紹介していきます。1. export コマンドexportコマンドは、変数や関数を、現在のシェルから起動されるすべての子プロセスの環境へエクスポート(引き継ぎ)するために使用します。export varname=valuee

  6. Linuxシェルスクリプトで使えるBash forループの書き方と実例12選

    Bashのforループには、大きく分けて2種類の書き方があります。1つは「in」キーワードの後に値のリストを指定する形式、もう1つはC言語のような構文を使用する形式です。 本記事は、当サイトで連載中のBashチュートリアルシリーズの一篇です。 ここでは両方のforループ方式を解説し、シェルスクリプトでforループを活用するための具体例を12個紹介します。forループの使い方については、この記事1つで事足りるよう網羅的にまとめています。今後の参考にするためにも、ぜひブックマークしておいてください。 方法1:「in」キーワードと値のリストによるBash forループ 構文: for varname

  7. 知っておきたいLinux Bash履歴展開の実例15選

    Bashの履歴機能は非常に強力です。履歴展開(history expansion)を効果的に使いこなせるようになれば、Linuxコマンドラインでの作業効率は飛躍的に向上します。 この記事では、以下の3つのBash履歴展開機能を使った15の実例を解説します。 イベント指定子(Event Designators):履歴内の特定のコマンドを参照します。「!」で始まります。 単語指定子(Word Designators):履歴エントリ内の特定の単語を参照します。通常はイベント指定子と組み合わせて使い、両者はコロン(:)で区切られます。 修飾子(Modifiers):イベント指定子や単語指定子による置

  8. LinuxでSHCを使ってBashシェルスクリプトを暗号化する方法

    質問: Linux環境でbashシェルスクリプトを暗号化するにはどうすればよいですか?スクリプト内にパスワードが含まれており、実行権限を持つ他のユーザーにスクリプトの中身やパスワードを読まれたくありません。シェルスクリプトを暗号化する方法はありますか? 回答: まず最初にお伝えしたいのは、ベストプラクティスとしてはシェルスクリプトを暗号化すべきではないという点です。本来はスクリプトをきちんとドキュメント化し、誰が見ても内容を正確に理解できるように書くのが理想です。パスワードなどの機密情報が含まれる場合は、暗号化に頼らなくても済む別の設計方法(設定ファイルの分離やアクセス権限の管理など)を検討し

  9. Linux Bashコマンドラインで使える5つの標準補完機能

    Linuxでは、Bashがデフォルトで以下の5種類の標準補完機能を提供しており、コマンドラインでの入力作業を大幅に効率化できます。Tabキーを活用することで、長いコマンドやパスを素早く正確に入力できるようになります。 変数名の補完 ユーザー名の補完 実行可能ファイル(パス)の補完 ファイル名・ディレクトリ名の補完 ホスト名の補完 1. 変数名の補完 ターミナルで「$」を入力した後にTabキーを2回押すと、利用可能なすべてのシェル変数が一覧表示されます。 $ echo $[TAB][TAB] $_ $COMP_POINT

  10. LinuxのBash補完を強化する!completeコマンドで実現する便利な自動補完テクニック10選

    Linuxでは、コマンド入力中にTABキーを2回押すと、入力した文字で始まる利用可能なコマンドがすべて一覧表示されます。 これはおそらくご存知の方も多いでしょう。この機能は「bash補完(bash completion)」と呼ばれ、ファイル名やディレクトリ名の基本的な補完は、Bashのコマンドラインでデフォルトで利用できます。 しかし、completeコマンドを使えば、このbash補完をさらに強力にし、次のレベルへ引き上げることが可能です。 本記事では、「プログラマブル補完(programmable completion)」を使って、コマンドのオプションや引数に自動補完を適用する方法を詳しく解

  11. .inputrcファイルでLinuxのマクロ・関数キーバインドを自作する方法

    Readline(リードライン)では、ホームディレクトリにある「.inputrc」という設定ファイルを編集することで、独自のカスタムキーバインドを自由に割り当てられます。 定義できるカスタムキーバインドには、次の2種類があります。 マクロ(Macros) 関数(Functions) マクロの定義方法 マクロを使うと、キー操作を実行したときに、カーソルの現在位置へ任意の文字列を自動入力させることができます。設定するには、.inputrcファイル(存在しない場合は新規作成)に、次の形式で1行追加します。 <キーの組み合わせ>: <挿入したい文字列> たとえば、「~/de

  12. Linuxターミナルのリダイレクトを使いこなして、データの読み書きを自由自在に

    入出力のリダイレクトは、あらゆるプログラミング言語やスクリプト言語が備える基本的な機能です。技術的に言えば、コンピュータとやり取りをする限り、常に無意識のうちに発生しています。入力は stdin(標準入力、通常はキーボード)から読み込まれ、出力は stdout(標準出力、テキストやデータのストリーム)へ送られ、エラーは stderr に出力されます。これらのデータストリームの存在を理解すれば、BashやZshなどのシェルを使う際に、情報の行き先を思いどおりに制御できるようになります。 標準入力・標準出力・標準エラーは、Linux上ではファイルシステムの場所として存在しています。/dev ディレ

  13. 何年も経ってもまだtcshが好きな理由

    私は自分を幸せなBashユーザーだと思っています。しかし、Unixの世界に足を踏み入れた当初は、デフォルトでtcshが提供されるプロプライエタリなUnixシステムだったため、最初に触れたシェルはモダンなCシェル(csh)でした。この偶然は結果的に幸運でした。というのも、後年私が働いていた映画スタジオでも、選択するシェルはtcshだったからです。 今でも、論理的な関連性はないものの、いくつかのタスクはtcshと結びつけて考えることがあります。少なくとも1つのシステムでは今もtcshを使い続けており、感覚を維持するようにしています。また、自分が書いたtcshスクリプトとの互換性を保ち、必要なときに

  14. インタラクティブな「数当てゲーム」を作りながらBashを学ぼう

    新しいプログラミング言語を学ぶのは楽しいものです。私が新しい言語に挑戦するときは、まず変数の定義、文の書き方、式の評価という3つの基本概念に焦点を絞ります。これらをひと通り理解できれば、あとは自力で習得できることがほとんどです。多くのプログラミング言語には共通点があるため、一つの言語をマスターしていれば、次の言語を学ぶ際には固有の細部や違いを押さえるだけで済みます。 新しい言語の練習として、私はいくつかのテスト用プログラムを書くようにしています。その中でよく作るのが、シンプルな「数当てゲーム」です。コンピュータが1から100までの数字をランダムに選び、プレイヤーがそれを予想します。正解するまで

  15. 2021年、コマンドラインスキルを磨くためのBashチュートリアル7選

    Bashは、ほとんどのLinuxシステムで標準搭載されているコマンドラインシェルです。せっかくなら、その力を最大限に引き出す方法を学んでみませんか?今年、Opensource.comでは、Bashシェルの可能性を活かすための優れた記事が数多く公開されました。ここでは、特に読まれたBash関連の記事を厳選してご紹介します。 Linuxターミナルのリダイレクトを使いこなして、どこからでもデータを読み書きする 入出力のリダイレクトは、あらゆるプログラミング言語やスクリプト言語に備わっている基本的な機能です。技術的に言えば、コンピュータとやり取りをする際には常に発生しています。入力はstdin(標準入

  16. Bashでファイルを読み書きする方法――source、パース、リダイレクトの基本

    Bashでスクリプトを書いていると、ファイルからデータを読み込んだり、ファイルへデータを書き出したりする場面に必ず出会います。ファイルにはアプリケーションの設定オプションが格納されていることもあれば、ユーザーがアプリケーション上で作成したデータそのものであることもあります。データファイルの扱い方は言語ごとに少しずつ異なりますが、本記事ではBashおよびその他のPOSIXシェルでデータファイルを扱う方法を実例とともに解説します。 Bashのインストール Linuxをお使いなら、おそらくすでにBashがインストールされています。もし入っていない場合は、各ディストリビューションのソフトウェアリポジ

  17. Bashで関数を書く方法|定義から呼び出しまで徹底解説

    プログラミングとは、コンピュータに実行させたい手順、すなわちルーチンを定義する作業です。パン作りにたとえると分かりやすいでしょう。まず材料を一度リストアップして作業環境を整え、次にパンが焼き上がるまでの手順を記述していきます。プログラミングでもパン作りでも、いくつかの工程は異なるタイミングで繰り返し行う必要があります。たとえばパン作りなら、サワードウ種を育てる工程がこれにあたります。 STIR=100 SNOOZE=86400 function feed_culture {   remove_from(pantry)   add(flour, water)  

  18. Bashのsourceコマンドで関数と変数をシェル環境にインポートする方法

    Linuxのシェルにログインすると、特定の作業環境を引き継ぎます。シェルにおける環境とは、あらかじめ設定された変数が存在し、あなたが入力するコマンドが意図したとおりに動作することを保証する仕組みのことです。たとえば、PATH環境変数はシェルがコマンドを探す場所を定義しています。この変数がないと、Bashで実行しようとするほぼすべてのコマンドがcommand not found(コマンドが見つかりません)というエラーで失敗してしまいます。普段の作業ではほとんど意識されることのない環境ですが、実は非常に重要な役割を担っているのです。 シェル環境に影響を与える方法はたくさんあります。~/.bashr

  19. Bashのhistoryコマンド活用術!履歴検索・再実行・文字列置換をマスターする

    Bashには豊かな「履歴」があります。つまり、Bashは古いシェルであり、さらにその祖先にあたるBourneシェルはもっと古いのですが、同時にBashのhistoryコマンドは、その多機能さにおいて他のどのシェルの履歴インターフェースよりも優れています。Bash版のhistoryでは、逆順検索、素早い再実行、履歴の書き換えなど、さまざまな操作が可能です。 historyコマンドはシェル組み込み関数 historyコマンドは、他の多くのコマンドとは性質が異なります。通常のコマンドは/usr/binや/usr/local/bin、~/binといったシステム共通の場所に配置された実行ファイルですが、

  20. Bashの連想配列でデータを自在に管理する

    シェルスクリプトでも、Python、C++、さらにはScratchでも、コードを書いたことがある人なら、変数がいかに重要かをご存じでしょう。コンピュータやプログラマは変数を「中継地点」として使い、情報をやり取りします。たとえば、シェルスクリプトでユーザー名を処理する場合、変数を用意し、そこにユーザー名を格納し、その変数に対して何らかの操作(許可されたユーザーのリストとの照合など)を行うようコンピュータに指示します。変数が重要なのは、コードを動的にできるからです。実行のたびに変化する情報のプレースホルダーとして機能するためです。 しかし、変数はあまりにも頻繁に使われるため、扱いにくくなることもあ

Total 311 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:6/16  20-コンピューター/Page Goto:1 2 3 4 5 6 7 8 9 10 11 12