ブックマーク / qiita.com/ko1nksm (6)

  • 【朗報】macOS 15.4でsortコマンドのソート順がまともに修正されました! 〜 マーズとマーキュリーの間にジュピターが割り込んでいた理由 - Qiita

    【朗報】macOS 15.4でsortコマンドのソート順がまともに修正されました! 〜 マーズとマーキュリーの間にジュピターが割り込んでいた理由sortgrepmacOSUnicodePOSIX はじめに 以前の macOS は sort コマンドで日語を含む Unicode 文字を正しくソートできませんでした。また grep コマンドでも正規表現の文字の範囲に正しくマッチできないという問題もありました。この記事ではその問題と理由を明らかにし、その原因がどこにあるかを確認します。なおこの問題は 2025年3月31日にリリースされた macOS 15.4 で修正されたようで(ただし別のバグがあります。補足2参照)、この記事に明らかにしている問題は macOS 15.3 以前の話です。 この記事は元々「macOS の sort コマンドのソート順はデタラメだ!」というタイトルだったのですが、

    【朗報】macOS 15.4でsortコマンドのソート順がまともに修正されました! 〜 マーズとマーキュリーの間にジュピターが割り込んでいた理由 - Qiita
    eggman
    eggman 2025/06/10
  • 名著「UNIXという考え方 - UNIX哲学」は本当に名著なのか? 〜 著者のガンカーズは何者なのかとことん調べてみた - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに え?みんなこんなを UNIX 哲学のオススメって紹介してるの? あえて煽りから入らせていただきます。UNIX 哲学を語るとしてマイク・ガンカーズ (Mike Gancarz) の「UNIXという考え方 - The UNIX Philosophy その設計思想と哲学」はおそらく日で一番有名な UNIX 哲学の解説です。名著と言われている通り素晴らしいこともたくさん書かれています。しかし前提知識を持たない人が、このを読んで正しく UNIX 哲学を理解するのはかなり難しいです。 注意 この記事の趣旨を勘違いされませんよう

    名著「UNIXという考え方 - UNIX哲学」は本当に名著なのか? 〜 著者のガンカーズは何者なのかとことん調べてみた - Qiita
    eggman
    eggman 2024/11/08
  • 【完全版】歴史でシェルの設定ファイルを理解する - 全POSIXシェル対応 (.profie, .bash_profile, .bashrc, .zprofile, zshrc, etc.) - Qiita

    プロファイルでできることは環境の設定だけです。シェルの設定は実際にはできないことはないのですが、やっても無意味なことになるのでできないとします。無意味なことになるというのは新しく起動したシェルにはプロファイルで行うシェルの設定は反映されないということです。環境の設定とは、特定のシェルに依存しない初期化処理のことで、その一つが環境変数の設定です。環境変数は OS の機能であってシェルの機能ではありません。環境の設定には、他に stty コマンドによる端末の設定や umask コマンドによる umask の設定などがありますが、プロファイルで設定することはあまりありません。 rc ファイルでは環境の設定とシェルの設定の両方ができます。シェルの設定、例えばプロンプト文字列の設定やシェルの機能を有効にしたり補完スクリプトの読み込みなどは rc ファイルに書きます。つまり、ほとんどのことは rc フ

    【完全版】歴史でシェルの設定ファイルを理解する - 全POSIXシェル対応 (.profie, .bash_profile, .bashrc, .zprofile, zshrc, etc.) - Qiita
    eggman
    eggman 2024/11/04
  • Unixの歴史の起源を伝説のゲーム「スペース・トラベル」で遊んで学ぼう! - Qiita

    ちなみに Space Travel にスコア機能やゲームのなにかを記録する機能はありません。描画は点と線だけで画像ファイルの読み込みなどは行いません。オリジナルの Space Travel は紙テープから起動してオンメモリで動くはずです。何が言いたいかというと Space Travel を動かすためにファイルシステムを作る理由はないということです。紙テープからの起動なんて時間がかかるのでは? と思ったあなたは鋭い。1980 年頃の音楽用のカセットテープをコンピュータの記憶媒体として使っていた時代では、実際にゲームを始める前のロード時間に何分も待っていました。 初期の Unix 開発の技術は Space Travel から学んだ さて、この記事は Space Travel を通して Unix 開発の初期の歴史や、なぜケン・トンプソンは Unix を開発するに至ったのかを知ろうというのが趣旨の

    Unixの歴史の起源を伝説のゲーム「スペース・トラベル」で遊んで学ぼう! - Qiita
    eggman
    eggman 2024/09/19
  • 今どきのシェルスクリプトは数値計算にexprを使わない(POSIX準拠) - Qiita

    はじめに 1992 年に POSIX でシェルが標準化されて以来、シェルスクリプトの数値計算に expr コマンドは使いません。expr コマンドを使って計算していたのは Bourne シェル(古い UNIX の sh)時代の話で、現在の POSIX sh (dash、bash、ksh 等)時代では数値計算に expr コマンドは不要です。今どきはシェルの機能だけで整数の計算を行うことができます。「今どき」って一体いつからだって話なわけですが……。 注意 シェルスクリプトでパフォーマンスの話をするとすぐに「他の言語で〜」という方がいますが、私はどんなことにでもシェルスクリプトを使えなんて一言も言っていません。パフォーマンスを気にしている理由は、そこが実際にシェルスクリプトのボトルネックになるポイントだからです。そもそもシェルスクリプトと一般的な言語は言語設計レベルで得意なことが違います。ユ

    今どきのシェルスクリプトは数値計算にexprを使わない(POSIX準拠) - Qiita
    eggman
    eggman 2022/10/08
  • シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに シェルスクリプトで二重起動防止やロックをする方法を検索すると、いろいろな方法や書き方が見つかりますが、どれを使えばよいのか、当に正しく動くのか、不安になりますよね? ディレクトリ (mkdir) やシンボリックリンク (ln) を使った独自実装の例も見かけますが、エラー発生時や予期せぬ電源断、CTRL+C で止めたときなどでも問題は発生しないのでしょうか? まず、ディレクトリやシンボリックリンクを使った独自実装はしない。これを肝に銘じてください。シェルスクリプトでのロック管理はとても難しく、一般的な排他制御の知識に加えて、シ

    シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita
    eggman
    eggman 2022/09/28
  • 1