
シェルスクリプトではselectという構文が用意されている。 while文とメニュー表示機能が組み合わさったような機能で、シェルスクリプトらしい機能だ。 このページではサンプルプログラムをご紹介しつつ、selectの使い方をまとめてみた。参考にしていただければと思う。 シェルスクリプトのselectとは? 「select」文をつかうと簡易的な対話メニューが簡単に作成できるので便利だ。 丁度while文にメニュー表示機能がまざったような処理をする。メニューを表示しループ処理に入り、変数と分岐処理をつかって制御することが多い。 実際while文と分岐処理を使用し、作り込むと同じようなことができる。しかし若干大がかりになるので素直にselect文を使おう。 これまで解説してきた制御文は「必須の処理」が殆どだったが、今回は「より便利な処理」を実現するため制御文といえる。 なお「select」はba
OSC Enterprise.2015での講演資料です。 JobSchedulerの概要・特長の紹介です。Read less
Red Hat系のOS、CentOSやFedraではRPMというパッケージ管理システムを使う。 このページではRPMについて基本や便利なオプションなど含めて一通り解説した。参考にしていただければと思う。 パッケージ管理の概要について知りたいという方は下記を参考にしてほしい。 RPMとは? RPMはパッケージ管理システムのひとつだ。 「Red Hat Package Manager」の略だったのだが現代では「RPM Package Manager」の略で再帰的頭字語となっている。 主にRHELを始めCentOSやFedoraなどの「RedHat系列」なディストリビューションに採用されていることが多いパッケージ形式だ。 実際はこの上でパッケージを統合管理する「パッケージマネージャフロントエンド」が機能しパッケージを処理するため、単体で触れる機会は少なくなっている。 RMPのパッケージ RPMの
Tips for Productive Debugging with GDBの抄訳。 Tips 1: GDB Dashboardを使おう GDB Dashboardは単一の.gdbinitファイルで、ブレークポイントで止まるたびに下図のようなクールな画面を表示してくれる。 https://github.com/cyrus-and/gdb-dashboard gdbには標準でTUIモード(cursesベースのUI)が搭載されているが、そちらは画面の乱れが頻繁に起こる。GDB Dashboardはcursesを使っていないので乱れが起きない。 スクショではOutput/messages, Source, Assembly, Threadsなど多数のモジュールを全部入りで表示しているためゴチャゴチャしているが、設定で自分に必要なモジュールだけを表示するようにできる。 訳者もしばらく使っているが、
はじめに vimdiffが使える場合はこの記事は読む必要がありません。 また、はじめには読み飛ばして下さって構いません。 エンジニアにとって、2つのファイルの比較を行うことはよくあることだと思います。 ですが最近仕事で2つのファイルの差分を__誰でも__すぐに読み解ける方法を考え出す必要が出てきました。なお、補足をするとそのプロジェクトではgitを導入できる段階ではありませんでした。 全員がvimを使えるならvimdiffで良いと思います。 ここでは主に__diffコマンドに関することでの視覚的なこと__についてメモしたいと思います。 パッチ等他の形式については Linuxエンジニアらしいパッチのつくりかた がよくまとまっていると思いますので、そちらをご覧ください。 diffコマンド 一般的に差分を取るときは普通はdiffコマンドが思いつきます。diffコマンドの差分の判定についてのオプシ
Unixの世界には readdir_r()というAPIがある。readdir()のthread safe バージョンとしばしば紹介されている。 それぞれの関数宣言は以下 http://man7.org/linux/man-pages/man3/readdir_r.3.html struct dirent *readdir(DIR *dirp); int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result); struct dirent { ino_t d_ino; /* inode number */ off_t d_off; /* not an offset; see NOTES */ unsigned short d_reclen; /* length of this record */ unsigned
Googleが新OS「Fuchsia」の開発プロジェクトを開始したようだ。LinuxやAndroidではなくLKをベースにしており、RTOSとしての完成を意図しているようだ。 Googleが新OSの開発プロジェクトを開始したようだ。 「Fuchsia」と名付けられたプロジェクトはGitHubにリポジトリが設けられているものの、LinuxやAndroidなどとの関係を含めた位置付けは明らかにされておらず、「Pink + Purple == Fuchsia (a new Operating System)」とだけ説明されている。 GitHubのドキュメントによれば、マイクロカーネル「Magenta」を核とする構成とされている。MagentaはLK(LK embedded kernel)をベースとしており、これはFreeRTOSやThreadXなど組み込み機器向けOSのなかでも高い即時性などを要
B! 15 0 0 0 Windowsで使われているシェルのPowerShellがオープンソース化し、 さらにMacやLinuxへもインストールして使える様になりました。 PowerShell for every system! Macで使ってみる アンインストール Macのデフォルトシェルにしてみる PowerShellスクリプトをBash等から使う 初期設定ファイル まとめ PowerShell for every system! GitHubでPowerShellのソースが公開されています。 PowerShell is open sourced and is available on Linux 同時に、ここからMac用やLinux用のインストールイメージもダウンロードできるようになっています。 Package installation instructions: https://g
読み終わった。たった100Pにプログラム言語を作るための基礎(字句解析、構文解析、ランタイム、インタプリタ、仮想マシン、ネイティブコンパイルまで!)が一通り学べ、さらに本書で作った実際に動くプログラミング言語がついてくる。 $39.99 とちょっと高いがプログラム言語を作る勉強代だと考えれば最も安くそして早く(ドラゴンブックは1090P)学べるのではないだろうか。洋書なのが難点だが半分くらいはソースコードなので苦労しながらなんとかなりました。(日本語訳出てほしいなぁ) 書籍内で作る言語は2種類で Awesome Rubyの構文にPythonのインデントブロックを混ぜ合わせたようなオブジェクト型 Mio Ioを参考にしたメッセージ型 言語自体はどちらもRubyで書かれているが紹介される概念は特に言語の制約を受けないものが多い。 よかったところ yaccやbison, JVM系の構文解析ツール
cdは作業するディレクトリを移動するlinuxコマンドだ。 今回は様々なディレクトリの指定方法を解説しながら、基本的なcdコマンドの使用方法を説明する。 cdコマンドはLinuxを使う上で一番はじめに出会うコマンドだろう。Windowsで言うフォルダにあたるディレクトリに関しても簡単にご紹介する。 ディレクトリの種類 ディレクトリはWindowsでいうフォルダに当たるものだ。Linuxは階層構造を基本としていて、ディレクトリを移動して作業をしていく。 ディレクトリで覚えておきたいのは次の用語だ。 カレントディレクトリ 今、作業しているディレクトリを指す。 ルートディレクトリ ディスクの一番上の階層のディレクトリだ。根本のディレクトリという意味だ。重要なフォルダかそうでないかの見分けははじめはつかないと思うので、慣れるまではここで作業はしないほうがいい。 ホームディレクトリ ユーザーが自由に
新しい環境が与えられたときなど、LinuxのOSやバージョンを確認することは結構あるはずだ。 しかし、頻繁に打たないコマンドなので、とっさに出て来ないという方が多いのではないだろうか? このページではLinuxのOSやバージョンを確認する方法を解説する。 LinuxのOSとバージョンの確認方法 ディスプレイマネージャが起動している場合 「Control + Alt +F2」 などでコンソールログイン画面に移動、一番上の部分にディストリビューション名とバージョンが確認できる。 unameでマシンのバージョン情報がある程度、把握できるが、上記のとおり、ディストリビューションの名前に関して明記されないことがほとんどだ。 /etc/issue ログインするまえに、コンソール上にディストリビューション名が表示されていることがある。この表示内容は「/etc/issue」で確認できる。 $ cat /e
オープンソースのコンテナ管理ソフトウェア・Dockerは、軽量な仮想実行環境であり、少ないリソースで効率よくアプリケーションを動かせるとして注目を集めています。また、2016年6月にはソフトウェアのマーケットプレイス「Docker Store」をオープンすることを発表し、プライベートベータ版として開始しています。 今後の利用拡大が見込まれるDockerの使い方について、わかりやすく解説している記事・スライドを11個ピックアップして紹介します。これからDockerをはじめたいと考えている方はぜひ参考にしてください。 Dockerの使い方の参考になるサイト・記事 隔離の技術Dockerの考え方と使い方の基本 / TECHSCORE BLOG http://www.techscore.com/blog/2014/08/05/introduction-to-docker/ Dockerの概要、よく
昨日僕の Twitter タイムラインで q というツールが話題に上がっていました。 GitHub - harelba/q: q - Run SQL directly on CSV or TSV files Text as Data q is a command line tool that allows direct execution of SQL-like q... https://github.com/harelba/q 標準入力を SQL で抽出できるという物です。ただ個人的には「こういうの python じゃなくて Go でビルドされてると助かるよなー」と思ったので q と同じ様な動作になるツールを作ってみました。 GitHub - mattn/qq Select stdin with query https://github.com/mattn/qq 例えば msys2 のシ
マイクロソフト、オープンソースのJavaScriptエンジン「ChakraCore」をLinux版Node.jsに対応、「Node-ChakraCore on Linux」プレビュー版公開 マイクロソフトは、Microsoft EdgeやWindows 10で使われているJavaScriptエンジンのコア部分を「ChakraCore」をLinux対応にし、さらにNode.jsに対応させた「Node-ChakraCore on Linux」のファーストプレビュー版を公開しました。 ChakraCoreは2015年12月にオープンソース化され、WindowsだけでなくLinuxやmacOSへの移植が進められることが明言されていました。 さらに今年に入って2016年1月にはNode.jsのJavaScriptエンジンとして使われているV8の代わりにChakraCoreを使えるようにNode.js
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く