Bashプログラミング

 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング
  1. Bashの履歴をもっと便利に活用するための実践テクニック

    LinuxのターミナルでBashを使っているなら、最近実行したコマンドを振り返れる「履歴(ヒストリー)」機能が最初から組み込まれています。Bashセッションの履歴を表示するには、組み込みコマンドのhistoryを実行します。 $ echo foo foo $ echo bar bar $ history   1  echo foo   2  echo bar   3  history historyコマンドは、多くのコマンドと異なりファイルシステム上の実行ファイルではなく、B

  2. Bashスクリプトでtrapコマンドを使ってシグナルを捕捉する方法

    シェルスクリプトが開始するタイミングを検出するのは簡単ですが、いつ終了するのかを正確に把握するのは必ずしも容易ではありません。スクリプトは作者の意図どおりに正常終了することもあれば、予期しない致命的なエラーによって途中で失敗することもあります。失敗時に処理途中の状態を残しておくと後で役立つ場合もあれば、逆に邪魔になってしまう場合もあります。いずれにせよ、スクリプトの終了を確実に検出し、あらかじめ用意しておいた方法で対応するためにこそ、Bashのtrapディレクティブが存在するのです。 障害発生時に適切に対応する まず、スクリプト内の一つの失敗が、その後の失敗を連鎖的に引き起こす例を見てみましょ

  3. 大規模なファイルシステムで役立つBashスクリプトを試してみよう

    ディレクトリ内の「ファイルだけ」を一覧表示したいと思ったことはありませんか?あるいは「ディレクトリだけ」を表示したい場面もあるでしょう。そんなときに役立つのが、GPLv3で公開されている今回紹介するスクリプトです。 もちろん、findコマンドを使えば同じことができます。 find . -maxdepth 1 -type f -print しかし、この方法は入力が面倒で、出力も見づらく、lsコマンドが持つ便利な機能の一部を利用できません。lsとgrepを組み合わせるという手もあります。 ls -F . | grep -v / とはいえ、これもやや冗長です。このスクリプトは、もっとシンプルな代替手

  4. システム管理者のためのBashスクリプト入門:他のシェルより優れている5つの理由

    Bashシェルは唯一のシェルではありませんが、間違いなく最も強力なシェルのひとつです。単なるコマンドの羅列以上の、本格的なアプリケーションや自動化処理を開発したいシステム管理者にとって、Bashは人気の選択肢となっています。もちろん他のシェルにも優れた用途はたくさんあります(筆者はGitフックにはTcshをデフォルトで使っています)。しかし、本格的なスクリプティングとなると、Bashが最も手軽で確実な選択です。その理由を詳しく見ていきましょう。 1. 関数(Functions) Bashスクリプトで関数を作成するには、functionキーワードを使用します。 function foo {# こ

  5. 自宅プリンターで両面印刷を自動化!シンプルなBashスクリプトの作り方

    私の自宅にはレーザープリンターがあります。Hewlett Packard LaserJet Pro CP1525nwカラープリンターはやや古いモデルですが、何年もの間、安定してカラー印刷をこなしてくれる頼れる働き者です。数年前にRaspberry Piをプリントサーバーとして導入し、家庭内ネットワークに接続しました。 このLaserJetはホームオフィスにとって大きな戦力です。昨年会社を立ち上げて以来、クライアントとの打ち合わせやワークショップ、研修会用の資料印刷には、ずっとこの小さなレーザープリンターにお世話になってきました。 ただ、ひとつだけ不満があります。このプリンターは片面印刷にしか対

  6. Bashプログラミング入門:シェルスクリプトで日々の作業を自動化しよう

    Unixに当初寄せられていた期待の一つは、日常的にコンピュータを使う誰もが、自分のコンピュータを細かく調整し、自分独自の働きスタイルに合わせられるようにする、というものでした。しかしそれから数十年が経ち、コンピュータのカスタマイズへの期待は次第に薄れ、多くのユーザーにとって「カスタム環境」とは、インストールしたアプリや利用するウェブサイトの集合体程度のものになってしまいました。その理由の一つは、多くのオペレーティングシステムの構成要素がオープンではなく、ソースコードが一般ユーザーの手に届かないことにあります。 ところがLinuxユーザーにとっては、カスタムプログラムは十分に現実的な選択肢です。

  7. 星空観察の夜に役立つ!Linuxのナイトビジョン用Bashスクリプト「redscreen.sh」の使い方

    Linuxはサーバーや開発者の環境で使われることがよく話題になりますが、実は天文学の分野でも幅広く活用されています。Linux向けには、星図やスカイマップ、望遠鏡駆動システムを制御するインターフェースなど、天体観測に役立つツールが数多く存在します。しかし、天文学者にとって大きな課題のひとつが、暗闇の中で目の順応を保ちながらコンピューターを操作することです。 なぜ「暗順応」を守る必要があるのか 夜間の屋外で観測を行う際、天文学者は「暗順応(ダークアダプテーション)」と呼ばれる目の状態を維持しなければなりません。人間の目が薄暗い環境に完全に慣れるまでには、最大で30分ほどかかるとされています。とこ

  8. パズルを解きながらBashをマスターできる一冊――『Bash it out』レビュー

    コンピューターは私にとって趣味であり、同時に仕事でもあります。自宅のアパートには10台ほどのマシンがあり、Macも含めてすべてLinuxが動いています。マシンのアップグレードもスキルの向上も好きな私にとって、Sylvain Leroux(シルヴァン・ルルー)氏の著書『Bash it out』を見つけたときは、迷わず購入しました。日頃からDebian Linuxでコマンドラインを多用している私にとって、Bashの知識を深める絶好の機会に思えたのです。しかも序文で著者自身がDebian Linuxを使っていると書かれており、私のお気に入りディストリビューションのひとつだけに、思わず笑みがこぼれまし

  9. 毎日の開発が快適になる!私のお気に入りBashハック集

    1日中コンピュータに向かって仕事をしていると、繰り返し使うコマンドを見つけて登録しておき、あとで簡単に呼び出せるようにするのがとても便利です。それらのコマンドは~/.bashrc(Zshユーザーなら~/.zshrc)の中に静かに待機していて、あなたの作業をいつでもサポートしてくれます。 この記事では、私がよく忘れてしまう操作のために使っているお気に入りのヘルパーコマンドをいくつか紹介します。皆さんの時間と手間の節約になれば嬉しいです。 完了したら読み上げてくれる「looooooooong」関数 実行時間の長いコマンドを使うとき、私はよく並行して別の作業をしていて、後から「処理は終わったかな?」

  10. setV:Python仮想環境を簡単に管理できるBash関数

    1年以上にわたり、setVは私のbash_scriptsプロジェクトの中にひっそりと眠っていましたが、ついに公開する時が来ました。setVは、virtualenvwrapperの代替として私が日常的に使用しているBash関数です。軽量ながら、Python仮想環境の管理に必要な基本機能を備えています。 setVの主な機能 デフォルトでPython 3を使用 新しい仮想環境の作成 -p(--python)オプションでカスタムPythonパスを指定した仮想環境の作成 既存の仮想環境の削除 既存のすべての仮想環境の一覧表示 Tab補完機能(仮想環境名を忘れてしまったときに便利) インストール方法

  11. Bashを使用したHelmデプロイメントの自動化

    私たちの一部のアプリケーションはKubernetesクラスタでホストされており、GitLab Continuous Integration (CI) を使用してデプロイメントを自動化し、Helm 2でアプリケーションをデプロイしています。Helmチャートを使用すると、デプロイメント時にチャートが使用される際にコマンドライン引数として渡される変数を持つKubernetesオブジェクトのYAMLファイルテンプレートを格納できます。これにより、重要なシークレットをGitLab保護環境変数やHashiCorp Vaultに格納し、CIデプロイメントジョブ内でそれらを利用できるようになります。 Bas

  12. あなたのお気に入りのLinuxターミナルテクニックは何ですか?

    新年こそ、ターミナル作業の効率化を 新年の始まりは、日々の作業をより効率的にする新しい方法を見つける絶好のタイミングです。多くの人が新しい生産性ツールを試したり、日常的なプロセスを最適化したりします。見直すべきポイントのひとつが「ターミナル」です。特にオープンソースの世界では、ショートカットやコマンドを活用することで、ターミナルでの作業をより速く、そして楽しくできる方法がたくさんあります。 そこで私たちはライターたちに、それぞれのお気に入りのターミナルテクニックについて尋ねました。時短のコツから、ちょっとしたイースターエッグまで、さまざまな回答が寄せられました。あなたもこれらのキーボードショー

  13. screenFetchとNeofetchでLinuxシステム情報を美しく表示・共有する方法

    自分のLinux環境の設定を他の人と共有したい理由はさまざまです。システムのトラブルシューティングで助けを求めたい場合もあれば、自分が作り上げたデスクトップ環境を誇らしく思って、オープンソース愛好家の仲間に披露したい場合もあるでしょう。 cat /proc/cpuinfo や lscpu コマンドを使えば、一部の情報はBashプロンプトから取得できます。しかし、OS、カーネル、稼働時間(アップタイム)、シェル環境、画面解像度といったより詳細な情報をまとめて共有したいなら、「screenFetch」と「Neofetch」という2つの優れたツールがおすすめです。 ScreenFetchとは Scr

  14. Bashシェルスクリプトで実現する自動化入門――システム管理者のための効率化ガイド

    Linuxシステムの運用・管理に携わるシステム管理者(Sysadmin)には、業務を効率化するためのツールへのアクセス権があります。この記事シリーズでは、Bashシェルスクリプトによる自動化を通じて、これらのツールを最大限に活用し、日々の作業を楽にする方法を解説します。 取り上げる主なテーマは以下の通りです。 Bashシェルスクリプトによる自動化のメリット CやC++などのコンパイル型言語よりも、システム管理者にとってシェルスクリプトが優れた選択である理由 新しいスクリプトの要件定義の作成方法 コマンドラインインターフェース(CLI)プログラムから簡単なBashシェルスクリプトを作成する方法

  15. Bashスクリプトテンプレートの作成:再利用できる雛形づくりと実践的なテスト手法

    このシリーズの最初の記事では、わずか1行の非常に小さなBashスクリプトを作成し、シェルスクリプトを作る理由や、コンパイル型プログラムではなくシェルスクリプトがシステム管理者にとって最も効率的な選択肢である理由について考察しました。 この2番目の記事では、他のBashスクリプトの出発点として使えるBashスクリプトテンプレートの作成を始めます。テンプレートには最終的に、ヘルプ機能、ライセンス文、いくつかの単純な関数、そしてコマンドラインオプションを処理するロジックなど、このテンプレートをベースとしたスクリプトで必要になりそうな要素が含まれることになります。 なぜテンプレートを作成するのか? 自

  16. Bashスクリプトにヘルプ機能を追加する方法【関数とオプション処理の基礎】

    このシリーズの第1回では、わずか1行の小さなBashスクリプトを作成し、シェルスクリプトを作る理由や、コンパイル型プログラムよりもシステム管理者にとって効率的な選択肢である理由について解説しました。第2回では、他のBashプログラムの出発点として使えるシンプルなテンプレートの作成に取り掛かり、そのテスト方法を探りました。 そして今回、4部構成の第3回では、シンプルなヘルプ(Help)関数の作成方法とその使い方を解説します。ヘルプ機能を実装する過程で、関数の使い方や、-h のようなコマンドラインオプションの処理方法も学ぶことができます。 なぜヘルプ機能が必要なのか? どんなにシンプルなBash

  17. Bashスクリプトのテスト方法:変数、定数、サニティチェック

    このシリーズの第1回では、最初の1行だけの小さなBashスクリプトを作成し、シェルスクリプトを作成する理由を探りました。第2回では、他のBashプログラムの出発点となるシンプルなテンプレートの作成を始め、そのテストを行いました。第3回では、シンプルなHelp関数の作成と使用、関数の使い方、-hなどのコマンドラインオプションの処理方法を学びました。 この第4回(最終回)では、変数とその初期化、そしてプログラムが適切な条件下で実行されることを保証するためのサニティチェック(健全性チェック)について解説します。このシリーズの目的は、将来のBashプログラミングプロジェクトのテンプレートとして使える

  18. Bash上級者を目指すなら読むべき、2019年厳選記事ベスト10

    Opensource.comでの充実した一年が幕を閉じようとしています。Bashに関するあらゆる話題に魅了されてきた筆者は、2019年に公開されたBash関連記事の中から、特に優れたトップ10を振り返ってみることにしました。そのラインナップには、初心者向けのハウツー記事から便利なツール、時短ショートカット、さらにはBashでコマンドラインゲームを自作する方法まで、幅広い内容が含まれています。 なお、今回の選出はアクセス数だけでなく、複数の基準を総合的に判断して行いました。恒例のトップ10カウントダウン形式でお届けしますので、2019年のNo.1記事は最後に発表されます。お楽しみに。 第10位:

  19. Bashスクリプトをより実用的にする5つのテクニック

    システム管理者は、さまざまなタスクを遂行するためにBashスクリプトを日常的に書いています。短い数行のものから、かなり長大なものまで幅広いでしょう。 ソフトウェアベンダーが提供するインストールスクリプトを見たことはありますか?顧客のシステムに損害を与えず、正しくインストールが完了することを保証するために、多くの関数やロジックが組み込まれています。筆者は長年の経験の中で、Bashスクリプトを強化するためのさまざまな手法を蓄積してきました。本記事では、その一部を紹介し、読者の皆さんの助けになれば幸いです。 はじまりは単純なコマンドの連結から 筆者が学び始めた頃のBashスクリプトは、コマンドを並べ

  20. 楽しく学べる!Bash習得に役立つコマンドラインゲーム3選

    学習は大変な作業であり、誰も「作業」そのものは好きではありません。つまり、Bashがどれだけ習得しやすい言語だとしても、やはり「勉強」という感覚を拭いきれないかもしれません。しかし、ゲームを通して学ぶなら話は別です。 ターミナルの使い方を教えてくれるゲームなど、そう多くは存在しないと思うでしょう。実際、その通りなのです。PCゲーマーならご存知の通り、FalloutシリーズにはVault内にターミナル式のコンピュータが登場し、テキストでコンピュータと対話するという概念に自然と親しめるようになっています。AlpineやEmacsに似たアプリケーションも登場しますが、残念ながらFalloutをプレイ

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