タグ

Unixに関するUhoNiceGuyのブックマーク (10)

  • なぜsortコマンドはuniq機能を含んでいるのか?(Unix哲学はどこ行った!?) - Qiita

    Unix 哲学的に考えれば、行を並び替える sort コマンドと重複行を取り除く uniq コマンドは別のコマンドであるべきなように思えます。しかし sort コマンドには -u オプションとして uniq コマンドに相当する機能が組み込まれています。なぜそうなっている(そうなってしまった)のかを「ソフトウェア作法(さくほう)」を参照しながらこの記事で明らかにしたいと思います。 関連記事 Unix哲学「一つのことをうまくやる」は単機能のコマンドを作ることではない 「誰」がuniq機能をsortコマンドに組み込んだ!? 熱烈的な Unix 哲学の信者は「どうせ Unix 哲学を理解しない GNU が便利だと思ってオプションを追加したのだろう」と考えるかもしれません。しかし uniq 機能が組み込まれたのは Version 7 Unix、つまり Unix の開発者が組み込んだのです。これは 1

    なぜsortコマンドはuniq機能を含んでいるのか?(Unix哲学はどこ行った!?) - Qiita
    UhoNiceGuy
    UhoNiceGuy 2024/05/17
    「ソフトウェアは一つのことをうまくやらせるのが基本だが、場合により複数機能を混ぜるのもあり」ということか
  • あなたが見た中で最も有用なコードコメントは何ですか?

    回答 (25件中の1件目) 有用なコメントはどれも有用で、どれが一番、としづらいです。 無いと困るという視点でみると、特定のデータ構造を処理するコードのコメントです。例えば、パーサーがどういう構文を処理しているのか?といったコードはどんな構文なのか説明がないと、何を処理しているのか構文を知らない人には解りません。 postgres/postgres 手続き型言語の場合、構造体への値設定にどのような意味があるのか?は代入からでは解りません。(OOの場合はエンカプスレーションしているので、メソッド名で概ね解るようにできる) postgres/postgres コードから処理が判って...

    あなたが見た中で最も有用なコードコメントは何ですか?
    UhoNiceGuy
    UhoNiceGuy 2023/12/04
    これ、CPUかコンパイラが変わったら動かなくならん?まぁ、そういうものか
  • 名著「UNIXという考え方 - UNIX哲学」は本当に名著なのか? 〜 著者のガンカーズは何者なのかとことん調べてみた - Qiita

    補足 1975: トンプソンはベル研を一時休職し、母校のカリフォルニア大学バークレー校に Version 6 Unix をインストールする作業を手伝う。これは後に BSD Unix として配布される。 1984-1998: ガンカーズが DEC でプリンシパル・ソフトウェア・エンジニアを務めた時期 ガンカーズは DEC の Unix Engineering Group (UEG) に所属 いつから DEC に勤めていたのかは不明 P63 より「小さな会社で Version 7 Unix を使っていた」ので 1979 年よりも後 V7M の開発には関わってなさそう おそらく 1980-1984 の間に DEC に入社したと思われる ガンカーズが「UNIX の考え方」についてのはないだろうか?と考えたのは 1991 年 1988: POSIX.1 標準化(POSIX.2 は 1992 年)

    名著「UNIXという考え方 - UNIX哲学」は本当に名著なのか? 〜 著者のガンカーズは何者なのかとことん調べてみた - Qiita
    UhoNiceGuy
    UhoNiceGuy 2022/07/12
    手厳しいな。当時(日本語版発売当時)はRubyを256倍使う本とか出てて 気楽な読み物として読んだような。UNIXユーザー草の根ノウハウ集みたいな感じで//シェルスクリプトは今ならPython?Cより移植性いいと言ってもいいでしょ
  • Linux (Unix) の su コマンドの su は何の略か - 元RX-7乗りの適当な日々

    "man 1 su" すると頭には以下の記載がある。 NAME su - change user ID or become superuserまだ学生の頃、師匠に初めて su コマンドの存在を教わった時から、私は "Super User" ではなく "Switch User" であるという認識だったが、お恥ずかしながらどうやったら違ったらしい。 The Unix command su, which stands for substitute user is used by a computer user to execute commands with the privileges of another user account. su (Unix) - Wikipedia "Substitute User" なのですね。 代用するとか取り替えるの意だと思うので、確かにしっくりきますね。な

    Linux (Unix) の su コマンドの su は何の略か - 元RX-7乗りの適当な日々
    UhoNiceGuy
    UhoNiceGuy 2019/03/27
    知り合いの須藤さんは結構へまするのでsudo打つ度心配になる
  • さよなら、愛しのFreeBSD|力武 健次 / りきたけ けんじ|note

    2019年1月末でFreeBSDに関連する開発活動を止めることにした。とても愛していたOSだけに身を切られるような思いは否めなかったが、別れが来るなら自分の自由になるうちにと思い、決断した。以下は個人的な想いを綴っている。 BSDの大元は、カリフォルニア大学バークレイ校で作られたオペレーティングシステム、今風に言えば基ソフトだ。Berkeley Software Distributionというのがもともとの名前だ。 1985年に自分がUNIXに触れたころから憧れていたのがこのBSDだった。当時のBSDはまだオープンソースではなかったAT&TのUNIXのライセンス制限の傘下にあり、自由にソースコードが読めなかった。でもAT&TのUNIXであるSystem V(システムファイヴ)よりはずっと自由だった。その後、DECのULTRIXやSunのSunOS 4など、多くの先進的なUNIXマシンがB

    さよなら、愛しのFreeBSD|力武 健次 / りきたけ けんじ|note
    UhoNiceGuy
    UhoNiceGuy 2019/02/06
    使うだけの人だったけど//FreeBSD2.x.xの頃はLinuxがSlackWareだったのでPortsの利点も大きかったような。今はUbuntuが便利過ぎる。あと、CUDAのドライバの公式対応が
  • シェル芸初心者によるシェル芸入門

    2. $ whoami • @icchyr • 某濃厚な大学のB3 • Activity • CTF (tuat_mcc, TokyoWesterns) • ICPC (nocow) など

    シェル芸初心者によるシェル芸入門
    UhoNiceGuy
    UhoNiceGuy 2017/07/30
    LinuxではなくUNIXということで//有益な実例が豊富で、例だけでなく解説が丁寧にされている。最初にターミナル、標準入出力の解説を丁寧に行っており素晴らしい記事
  • あなたの知らない time(1) の世界 - kuenishi's blog

    自分が書いたプログラムのメモリ使用量を測定したいことがある。プログラムがOOM Killerによってお亡くなりになった場合や、ページフォルトをなくして高速化したい場合などだ。定常的に起動するサーバーのプログラムなら、sarや meminfo など(今なら Datadog とかだろうか)を使ってじーっと見つめるわけだ。もっとモダンにやるなら perf や DTrace を使ってもよいかもしれない。しかしこれらのツールは基的にプロセスIDを渡してサンプリングして外から覗く方法だ。 わたしのユースケースはデーモンプロセスではなく、 main から入って必要な計算をして、それが終わったら main を抜けるバッチジョブ(単にコンソールから実行して終わるまで待つ、いわゆる "Hello world!" 的なやつ)だ。これだと、プログラムが起動して終わるまでそこそこの時間で終わってしまって、外部プロ

    あなたの知らない time(1) の世界 - kuenishi's blog
    UhoNiceGuy
    UhoNiceGuy 2016/11/03
    bsd timeのソースは読んでみようと思う。
  • Origin of C Language

    C言語は、C++やC#など「C」を名乗る言語はもとより、1990年以降に盛んに使われるようになった各種言語の多くの源流とされている。 では、このC言語自身の起源はというと、一般には下記の系譜であると理解されている。 ところが、「C言語の構造体をめぐって」を まとめるに際して調べてみたところ、この系譜は事実の記述としてあまりにも一面的であり、系譜として「不適切」であると断言しても良いほどであるということが判った。 このことは、「C言語の構造体をめぐって」の2005年5月2日以降この文章の初稿公開日までの版にも簡単に記載していたが、これを独立させて詳論してみることにした。 CPLを起源とする系譜が如何に「不適切」か まず結論を簡単にまとめておくと、以下のようになる。 B言語がBCPLから受け継いだものは、非常に重要な側面ではあるものの、B言語の特徴の一部分に過ぎない。 BCPLからは、CPLか

  • 私みたいなおっちょこちょいを自滅から救って来たちょいとした工夫x3+1 : 404 Blog Not Found

    2013年04月13日01:30 カテゴリTipsiTech 私みたいなおっちょこちょいを自滅から救って来たちょいとした工夫x3+1 bashクックブック ぎゃああぁぁぁ 僕がMacのホームディレクトリを削除するに至った経緯と、復元するまでの道のり | CreativeStyle 具体的に何をしたのか。それは、以下のコマンドの実行です。 $ rm -rf ~/ でもこれ、すごいやりがち。 やりがちなのになんでそれよりおっちょこちょいなはずな私がもう30年近くものあいだ難を逃れているかを披露しておくことにする。 以下、それぞれtcsh版とbash版を。zsh版はどなたかよろしく。 alias 上記の例は、実はこれだけで防ぐことが出来ていた。 tcsh alias rm 'rm -i' bash alias rm='rm -i' 要するに、rmと打ったらrm -iを意味するようにしておくわけだ

    私みたいなおっちょこちょいを自滅から救って来たちょいとした工夫x3+1 : 404 Blog Not Found
    UhoNiceGuy
    UhoNiceGuy 2013/04/13
    rmの間違えを防ぐためのTips/さすがにrm -iを常用するのはめんどくさくない?
  • Modern Syntax

    これ見たら「なんでいままでこういうのなかったんだろう」と思いました。 作ったのはサンフランシスコのインタラクティブ・テクノロジー企業Augmental社で、ボクシングのマウスピースみたいな形状で口の中に入れるのですが、舌が当たる部分にセンサーが付いていてそれを使ってマウスカーソルを操作することができます。なのでMousepadではなく「MouthPad^」という名前になっております。 怪我や病気で手足が不自由になった人々がコンピュータを操作する時って、これまでは視線を使ったりしていましたけど、これだともっと正確で直感的ですよね。 Bluetoothを使っているのでPCMacといったコンピューターやスマートフォン、タブレットでも使えるというのが素敵です。 舌は左クリックやクリック&ドラッグに使われ、口をすぼめるジェスチャーで右クリックを実現しているそうです。 まだ開発中のようで値段等は掲載

  • 1