Linuxに関するbamch0hのブックマーク (11)

  • Linux標準教科書|無償でダウンロードできる初学者向けLinux学習教材 | Linux技術者認定試験 リナック | LPI-Japan

    20万ダウンロード突破! 初心者の方が基礎からLinuxを学習するために最適な教科書 LPI-Japanは、Linux/OSS技術教育に利用していただくことを目的とした教材「Linux標準教科書」を開発し、無償にて公開しています。 基的なコマンド、正規表現、シェルスクリプト、ファイル管理など、Linuxの基礎知識を系統立てて学べるように構成されており、初心者の方が基礎からLinuxを学ぶために最適な内容となっています。操作手順をひとつずつ説明している教材はすでに20万回以上ダウンロードされ、「授業でも自習でも使える実践的な教科書」として学校教育、若手エンジニア教育、個人学習などに広くご利用いただいています。 Linux標準教科書で学習する内容は、LinuCレベル1の101試験と102試験の受験にも役立つ内容となっています。 教材は試験対策教材ではありません LinuCの試験対策には

    Linux標準教科書|無償でダウンロードできる初学者向けLinux学習教材 | Linux技術者認定試験 リナック | LPI-Japan
  • man は長すぎるので「tldr」

    たとえば, curl で JSON を POST したいとき, オプション記述を覚えてないので man. 長すぎて探すのが面倒で結局ぐぐってしまう. ssh でポートフォワードしたいとき, 結局これもぐぐってしまう. TLDR 【略】 =Too long. Didn't read. 長過ぎ。読みませんでした。/長文うざい(と言う人のための要約)。 そんな名前のすばやく調べるコマンドがありますよ. 分かりやすくうざくない長さで説明してくれます. tldr-pages/tldr ちなみに「tldr」で「tldr」は以下.

    man は長すぎるので「tldr」
    bamch0h
    bamch0h 2016/01/03
    コマンド概要を示してくれるコマンド
  • シェルスクリプトの中で1行ずつ変数を分割する際には、cutとかawkとか余計なプロセスを起動せずsetを使って分割した方が効率的 - 双六工場日誌

    シェルスクリプトの中で、スペース区切りもしくはタブ区切りのレコードを扱うことがよくあると思います。 たとえば、前回のエントリ「AWS CLIとjqを使って、AWSのELBボリュームがアタッチされているEC2インスタンス名を出力するワンライナーを書いた - 双六工場日誌」のスクリプトの出力は以下のようになります。 i-ec56a9f5 vol-07d00601 servername i-ec56a9f5 vol-8f550991 servername このようなレコードの特定の列を取り出して、処理する際にどうするのが効率的か、というのがこのエントリのお題です。 非常に古い話題なので、昔からシェルスクリプトを書いている人には自明な話ではありますが、最近、シェルの標準機能の話を聞く機会がなく、失われつつある技術になってきている気がしているので、改めて確認ということで。 例として挙げたレコードから

    シェルスクリプトの中で1行ずつ変数を分割する際には、cutとかawkとか余計なプロセスを起動せずsetを使って分割した方が効率的 - 双六工場日誌
  • Amazon.co.jp: Linuxカーネル2.6解読室: 高橋浩和, 小田逸郎, 山幡為佐久: 本

    Amazon.co.jp: Linuxカーネル2.6解読室: 高橋浩和, 小田逸郎, 山幡為佐久: 本
  • 第13回 組込みLinux上での割り込み | gihyo.jp

    一般的なデバイスドライバ デバイスドライバについて 今回はSH7706LSRのLinux上での割り込みを扱います。割り込みはハードウェア資源なので、ユーザプログラムでは扱うことはできず、デバイスドライバでの扱いが必須となります。まずは、SH7706LSR上にある汎用スイッチと汎用LEDの入出力を行う一般的なデバイスについてプログラミングをしてみます。 デバイスドライバもユーザプログラムと同様のソフトウェアですが、デバイスドライバはLinuxカーネルの一部分として動作しますので、Linuxカーネル内部実装に従ったプログラミング作法が要求されます。ユーザプログラムはLinuxカーネルと切り離されているので、Linuxカーネルのバージョンが新しくなっても基的にはユーザプログラムの変更が必要になることはないですが、デバイスドライバではLinuxカーネル内部実装の進化にあわせてデバイスドライバも変

    第13回 組込みLinux上での割り込み | gihyo.jp
  • LinuxのHRTを使ってみる @ ともの技術メモ

    マイコンで制御を行う際に気になるのが、精度のよい周期処理です。ワンチップマイコンであれば直接タイマーを制御して、割り込み処理をかけてやれば精度のよい処理が簡単にできます。しかしながら、LinuxではOSの御作法に従わなければなりません。 Linuxでどうすればよいのか調べてみたところ、HRT(High Resolution Timer)というのを使えば良さそうなことがわかりましたので、試してみました。 まずは、とにかく使ってみます。 // // コンパイル方法: $ gcc hrt_test.c -o hrt_test -lrt // #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <time.h> #include <inttypes.h> static struct timespec hrt_now

  • Ethernetの受信処理

    10GbE、40GbEなどの極めて高速な通信をサポートするNICが、PCサーバの領域でも使われるようになってきている。 このような速度の通信をソフトウェア(OS)で処理し高い性能を得るには様々な障害があり、ハードウェア・ソフトウェア両面の実装を見直す必要がある。 セッションでは、ハードウェア・ソフトウェア両面にどのような改良が行われてきており、性能を引き出すにはどのようにこれらを使用したらよいのかについて紹介する。

    Ethernetの受信処理
  • bash で Ctrl-C をフックする方法 - pyopyopyo - Linuxとかプログラミングの覚え書き -

    bash で Ctrl-C をフックする方法、つまりSIGINTを自前のシグナルハンドラで捕捉する方法についてメモ。 概要 シグナルハンドラを設定するには、trap というbashのビルトイン・コマンドを使います #!/bin/bash hander() { echo "recv!!" } trap hander SIGINT while /bin/true; do : ; done Ctrl-Cを押すと SIGINT という名前のシグナルがプロセスに通知されるので、trapコマンドで SIGINT を受け取ったら hander という関数を呼ぶように設定しています このシェルスクリプトは実行すると末尾で無限ループになるだけです。ただCtrl-C を押しても、シェルスクリプトは終了せず、代わりに hander()関数が呼ばれて"recv!" という文字列が画面に表示されます Ctrl-Cで

    bash で Ctrl-C をフックする方法 - pyopyopyo - Linuxとかプログラミングの覚え書き -
  • chmodやchownのreferenceオプションを知った時は目から鱗だった話

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 元々ホスティング会社で働いていたので、その特性上ownerやpermissionを色々と弄る事が多く、数年前の社会人時代にchmodやchownをもっと楽に使えないかなぁと調べた時に目から鱗だったのがchmodやchownのreferenceオプションでした。 今回は単にreferenceオプション楽ですよね、という記事なのでご存知の方は退屈な記事だと思いますが、まわりに聞いてみた所意外と知られていなかったりしたので、ブログエントリにしておこうと思います。 referenceオプションを使うと、任意のファイルを指定することで、変更対象のownerやpermissionを指定したファイルと同じ設定にすることができます。 例えば、/bin/pin

    chmodやchownのreferenceオプションを知った時は目から鱗だった話
  • Linuxのpipeの実装を見てみる - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ

    Unix V6のpipe()と比べてLinuxのpipe()どう実装しているんですかねーなんて話を最近したのでちょっと見比べてみた。 V6のpipeははじめてのOSコードリーディング 読書会 (15)でやったところなんだけど、俺は風邪ひいて家で引きこもってたので・・・ V6のpipeの挙動は大体こんな感じ。 pipeはルートディスクのストレージ領域を4096B(8ブロック)使用し実現する 4KBのデータ領域はひとつのファイルとして扱われる(inodeが割り当てられる) オンメモリではなくてストレージを経由するが、バッファサイズが小さいのでブロックデバイスのバッファキャッシュが効きやすいようになっている pipeの受け手がデータを読みだす前に他の優先度の高いプロセスがブロックデバイスを使用するとキャッシュが効かなくなる可能性あり でも、データはストレージに書かれているので内容が壊れると言った

    Linuxのpipeの実装を見てみる - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ
  • vimrc, runtime の優先順位を理解して Windows と Linux で Vim の設定を共有する - teppeis blog

    Vim の設定ファイルと言えば .vimrc ですが、これが Windows だとファイル名が異なって _vimrc とされています。 また、プラグインファイルを設置する runtime ディレクトリの名前も OS によって異なっています。 別々に管理するのは面倒なので、設定ファイルの優先度を調べながら、同じリポジトリを使用して一元管理する方法を探ります。 vimrc の共有 まず、vimrc にはシステム vimrc とユーザー vimrc の2種類があります。 システム vimrc → ユーザー vimrc の順で読み込まれ、重複する設定はユーザー vimrc で上書きされます。 システム vimrc に使用されるファイルは、基的には $VIM/vimrc ですが、システムにより異なります。 正確にはコマンドラインで :version を実行すると使用しているシステムでの vimrc

    vimrc, runtime の優先順位を理解して Windows と Linux で Vim の設定を共有する - teppeis blog
    bamch0h
    bamch0h 2013/11/17
    なんらかの順位があって、そのとおりに全vimrcが読まれていくと思ってたので、これは目からうろこ。
  • 1