タグ

unixに関するakishin999のブックマーク (131)

  • コマンドラインでデータを扱う方法の色々 | Yakst

    headやgrepなど基的なコマンドから、CSVのためのcsvtoolやJSONを扱うjqコマンドまで、テキストデータを処理する時に使う各種ツールを例とともに解説する。 RやPythonのような成熟したコンピューティング環境は、詳しくデータを分析するのには素晴らしいものだ。しかし、素早くシンプルにデータの調査や捜査をしたいときには、UNIXのコマンドラインツールはものすごく効率的だ。この記事では、自分で見つけ日々使っているいくつかのツールに光を当ててみようと思う。新しいツールをあなたのレパートリーに加えられたらうれしい。 ファイルをのぞき見る( head tail less ) NASAのサンプルWebログデータをダウンロードするところから始めよう。 $ wget ftp://ita.ee.lbl.gov/traces/NASA_access_log_Jul95.gz ダウンロードされた

    コマンドラインでデータを扱う方法の色々 | Yakst
  • Unixに関するいろいろな略称とその意味 - UNIX的なアレ

    いろいろな略称が多い! コマンドやディレクトリ名など、UnixなOSはとにかくいろいろな略称が多いです。特にさわりはじめの人はこの略称がいみわからずに心が折れてしまうことは多いと思います。実際にSchooでUnixの授業をやったときもこの略称を説明しました。 というわけでまとめてみました。なぜ略称が多いのかが気になる人はこちらを読んでみてください。 UNIXという考え方―その設計思想と哲学 作者:Mike Gancarzオーム社Amazon ※ちなみに、Linuxにもほぼ通用すると思いますがMacをベースに書いているのでUnixという表記にしています。 ディレクトリ名 名称 来の意味 備考 usr User Services and Routines これは若干怪しめです。Userという説も var Variable ログやメールの情報など、変わりうる情報を扱うもの tmp Tempor

    Unixに関するいろいろな略称とその意味 - UNIX的なアレ
  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA
  • Index of /

    Index of /

  • Unix Programming Frequently Asked Questions 日本語訳 - Table of Contents

    このFAQについて 1 プロセス制御 1.1 新しいプロセスの生成: fork() 1.1.1 fork()は何をするのですか? 1.1.2 fork()とvfork()の違いは何ですか? 1.1.3 forkによる子プロセスを終了するときにexitよりも_exitを使うのはなぜですか? 1.2 環境変数 1.2.1 どうすればプログラム内で環境変数の値を取得・設定できますか? 1.2.2 どうすれば全ての環境変数を調べられますか? 1.3 どうすれば一秒未満のsleepができますか? 1.4 粒度の細かいalarm()はどうすれば得られますか? 1.5 どうすれば親プロセスと子プロセスの間で通信できますか? 1.6 どうすればゾンビプロセスができることを防ぐことができますか? 1.6.1 ゾンビプロセスってなんですか? 1.6.2 どうすればゾンビプロセスになることを防げますか? 1.7

  • UNIX のフォント事情

    2016-07-21: このページの記述は古いうえに、(当初から)致命的に間違っている箇所があります。 今のところ気づいているのは、 ヒンティングの強弱と LCD レンダリングモードの直交した指定ができないというのは大嘘。当時から FreeType のリファレンスにちゃんと説明がある。 Firefox のレンダリングは cairo に移行済。 LCD フィルタは freetype 側に実装され、現在では多くの環境で適切に使用されている。 cairo で hintstyle の設定が無視される問題は Bugzilla を見る限りまだ残っているように思えるけれど、手元で試した感じでは反映されているような…。気のせいかも(適当)。 pango は HarfBuzz に移行。 TrueType のバイトコードヒンティングは、 2.6.4 で水平方向のヒンティング命令を無視する処理が追加され、サブピ

  • lsを読まずにプログラマを名乗るな! - 秀和システム あなたの学びをサポート!

    LinuxMac OS X、BSD、SolarisといったUNIX系OSにおいて最も身近なコマンドであるlsのソースコード解説書です。UNIX系OSを使っているプログラマであれば、誰でもlsコマンドを日常的に使っていることでしょう。実際、lsコマンドを実現しているプログラムは汎用性が高く、大量のデータも処理できるよう作られており、そのソースコードを読み解くことはプログラマの成長にとって大変役立ちます。書は、C言語に習熟している人を対象に、GNU coreutiles 8.21のlsソースコードを解説します。lsのソースコードを読めば、マルチプラットフォーム対応の注意点、大量のデータを可能な限り継続処理する方法、実行性能や利便性とのバランスの取り方がわかります。 【サポートはこちら】→https://www.shuwasystem.co.jp/support/7980html/3943.

    lsを読まずにプログラマを名乗るな! - 秀和システム あなたの学びをサポート!
  • 「UNIXという考え方」を読んだ · さよならインターネット

    September 13, 2013 UNIXという考え方―その設計思想と哲学 / @soh335 memo 面白くないだろうなと思って読んだけど面白かった。 ただ時代背景をちゃんと理解しないと何言ってんだオッサンみたいになる。 移植性の話でシェルスクリプトが礼賛されてるけど 今だとクロスコンパイルの効くgolangが良いと思う。 UNIXというか、Linuxを使ってると、入力コマンドをたった1byte間違えただけで OSが吹っ飛んだり、ちょっと間違えた時に昔の状態に戻れないの もしかしたら何十年後かにはそんなこともあったね。みたいな話になってるかもしれない。 コマンドの成否をOSがフォローするよりも、バージョン管理システムみたいに そのコマンドによってファイルシステム上のファイルに変更があった場合、 コマンド実行以前の状態に戻す。みたいなのできたら最高だと思う。 シェルスクリプト、とても

  • Shebangという謎な事実上業界標準について

    Shebangとは、UNIXのシェルスクリプトの業界標準で、シェルスクリプトの一行目のコメントの、#!を意味する。sheが短母音か長母音か分からなかったので、英語ネイティブにたずねたところ、人によって意見が違う。短母音の方が多数派のようなので、一応シバンが近いものになるだろう。日語版のWikipediaでも、シバンとしている。この機能には他にも多数の名前があるが、もっとも有名なのが、Shebangだそうだ。 その業界標準的な文法は、以下の通り(ただし、後述するように、この文字列の扱いについては違いがある) #! 文字列 [改行] 普通、実行権限のついたファイルは、標準のシェルで実行されるが、このShebangがある場合は、#!から改行までの間の文字列を、後述するバラバラな方法で解釈して、execで実行し、その際の引数には元のシェルスクリプトファイルへのパスが指定される。 問題は、このsh

  • プロセス・パイプ・リダイレクション・ファイルディスクリプタの実体を見に行く - ザリガニが見ていた...。

    プロセス置き換えとか、名前付きパイプとか、とても便利な機能なのだけど、その仕組みはどうなっているのだろう?断片的な知識ばかりでは、その核心にはなかなか辿り着けない。サンプルコードの真似はできるけど、それ以上の発想はできない...。もっと根的なところからちゃんと理解しておかないと、いつまでたってもコマンドの使い方の質が理解できないと感じた。プロセスとは何か?パイプとは何か?リダイレクションとは何か?ファイルディスクリプタとは何か?可能な限りその質を探ってみようと思う。 UNIXのプロセス UNIXでは、複数のユーザーがログインした状態で、同時に複数の処理を依頼される状況が多々ある。 ところが、どんなに高性能なCPUであっても、ある瞬間に処理できるのはたった1つの処理だけである。 そんな時OSは、それぞれの処理に必要なメモリ領域を割り当てて、CPUをタイミングよく切り替えながら同時並行的

    プロセス・パイプ・リダイレクション・ファイルディスクリプタの実体を見に行く - ザリガニが見ていた...。
  • Unixstickers - Sticker Mule

    Linux stickers for only $110 of the best open source and Linux stickers printed by Sticker Mule. Pro pack$1$910 stickers Badge sticker sheet (Arch Linux + Git + Vim + Python), Vim, Git, Python, Official Bash, Linux Tux, Debian, Arch Linux, Linux Inside, GoLang. Elite pack$1920 stickers Pro pack + badge sticker sheet (Debian, Linux Tux, GNU Linux, Little Tux), Copyleft, Don’t Drink and Root, GNU, E

    Unixstickers - Sticker Mule
  • ファイルパーミッション - Wikipedia

    ファイルパーミッション(file permission)とは、ファイルごとに定義された、読み出し・書込みなどのアクセスに対する許可情報。通常は、ファイルシステム内のファイルごとに、特定のユーザーやグループに対してアクセス権を設定する。これによって、ユーザーごとのファイルシステムの見え方に影響を与え、ファイルシステムに対する変更を制限する。単にパーミッションとも言う。 オペレーティングシステムによる違い[編集] Unix系やPOSIX準拠のシステムは、LinuxmacOS も含めて個々のファイルを単純な方式で管理する。それらシステムの多くは何らかのアクセス制御リスト (ACL) もサポートしており、独自方式(例えば、古いHP-UXのACL)、POSIX.1e のACL方式(かつてPOSIXのドラフト版で規定されたが結局規格化されなかった)、NFSv4標準の一部のACLなどがある。 MS-

  • 革命の日々! readdir_r は使ってはいけないという話

    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

  • デニス・リッチーによって書かれた最初のCコンパイラーがGitHubで公開

    mortdeus/legacy-cc · GitHub デニス・リッチー(1941-2011)によって書かれた発展途中の初期のCコンパイラーのソースコードがGitHubで公開されている。ソースコード自体は、まだデニス・リッチー存命の頃から公開されていたが、この機会に紹介してみる。 ライセンスは許諾的で、このライセンス文を同梱すること、並びに、ソースコードから生成されたバイナリはラインセンス文を出力することとなっている。 追記:ライセンスに関してふと思った。このライセンスは名義が企業で、著作権を盾に同意を求めている。日では、映画以外の団体の著作権の保護期間は公開後50年である。UNIXと付属するソフトウェアのソースコードは当時から公開されていた。ということは、1973年に制作されたこのCコンパイラーのソースコードは、日国内では、2024年に著作権が切れるのだろうか。 詳しい経緯は、以下の

  • Programming UNIX Sockets in C - Frequently Asked Questions

    Created by Vic Metcalfe, Andrew Gierth and other contributers (Transrated into Japanese by: Keisuke Mori)May 21, 1998 この文書は、UNIX 上での ソケットインターフェースを用いた TCP/IP アプリケーションプログラミングについて、頻繁に行われる質問とその 解答を集めたものです。 1. 一般的な情報と概念 1.1 更新情報 1.2 この FAQ について 1.3 この FAQ はどのような人向けでしょうか? 1.4 ソケットって何ですか? 1.5 ソケットはどのように動作するのでしょうか? 1.6 [あるの題名] というのソースコードはどこから取得できますか? 1.7 どこでもっと情報を得ることができますか? 2. クライアントとサーバ(TCP/SOCK_STREA

  • なるほどUnixプロセス読んだ - デーモン化のためのdouble fork - はこべにっき ♨

    なるほどUnixプロセス ― Rubyで学ぶUnixの基礎を読みました。UNIXプロセスの話、特に実用的なforkの利用方法についての話がコンパクトにまとまっていてわかりやすかったです。あまり詳細に踏みこんでいるという感じではないけど、とっかかりにこのにあるような知識があるのは良いと思いました。(シェルスクリプトから"foreman start"したときにCtrl-Cで終了できない現象の解説 - はこべブログ ♨ではまる前に読んでおいたら、もっとはやく問題解決できたと思います。) 第18章 デーモンプロセスに関係して二回目のforkについていろいろ調べたので、せっかくなのでメモを残しておきます。*1 第18章 デーモンプロセス では、プロセスをデーモン化するために必要な手順が丁寧に説明されています。その中で、プロセスを制御端末から切り離す手順として以下のようなコードが紹介されていました。

    なるほどUnixプロセス読んだ - デーモン化のためのdouble fork - はこべにっき ♨
  • なるほどUnixプロセス ― Rubyで学ぶUnixの基礎

    なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳) 達人出版会 3,520円 (3,200円+税) 『Working with Unix Processes』待望の完訳。並列処理やデーモン、プロセス生成、そしてシグナルといったUnixの基礎であるプロセスについてRubyで解説する、「今どきの」開発者に向けた新しいUnixプログラミングの手引きです。 ※書の公式ハッシュタグは#naruhounix になります。 関連サイト原著者による公式ページと訳者らによるサポートページがあります。 Working With Unix Processes - Learn the Fundamentals of Unix Programming in RubyなるほどUnixプロセスサポートページ 日語版刊行によせてRuby

    なるほどUnixプロセス ― Rubyで学ぶUnixの基礎
  • GitHub - Shinpeim/process-book: Unix系システムのプロセスについて日本語で解説しています

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - Shinpeim/process-book: Unix系システムのプロセスについて日本語で解説しています
  • USP友の会:シェルスクリプト大喜利 第七回 ~UNIXコマンドへの造詣が試される回

    こんにちは、シェルスクリプト大喜利司会のもっと吹く編集長でございます。秋ですね。「*の秋」と呼ばれる季節……、だからなのかわかりませんが。USP友の会もイベントが続いています。 おっと、今日(10/27)夜6時からは、友の会カイチョーがシェルスクリプト/Tukubaiでよそ様のイベントに殴り込みを掛けるらしいです。で、その様子をUst中継する(かもしれない)といいます。もし中継が実施されるならアタクシは、その様をシカと見守る事にシマス。 さて、USP MAGAZINE最新号(2012autumn)のシェルスクリプト大喜利はもうご覧になりましたか? えぇと、このコーナーは無料で読めますので是非暇つぶしに読んでください。 前回のお題に寄せられた解答も載ってますよ。幸運数を求めるのに「AWKだけ」とか「sedだけ」に拘った解答が来たり、「catコマンド作者の遺言」のお題には、よくまぁそこまで発想

  • Emacs で Rej ファイルを処理する人への 10 ステップ

    Patch を当てたら、Reject ファイルが出来てしまった。プログラミングではよくある光景。プログラマーは、人力で Reject (拒絶された) 部分を修正する必要がある。この時の作業を楽にする Tips を、Emacs 使い向けにまとめてみた。 とりあえず、次のやうなシチュエーションを想定している。 Situation ある日、実験用のコードを書きたくなった A 氏は、rev1 の時点のソース・コードをコピーして開発を行なった。実験コードは完成したけれど、その間にもオリジナルの開発は進んでいた。そこで A 氏は experimental コードの最新版と rev1 のコードの差分を取って開発チームに送り付けた。開発チームは送られたパッチを適用して、ほとんどの変更分は反映されたものの、いくつか競合 (Conflict) が発生した。開発チームは、Rej ファイルをもとに競合を解消する必