タグ

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

  • 祝🎉 POSIX.1-2024 (Issue 8) 改定!16年ぶりの大幅改定でシェルスクリプトはどう新しくなるのか? - Qiita

    FreeBSD では 2024-05-31 に 200112 から 200809 への変更がようやく行われました(一度間違えて 200808 と書いてしまっていますが)。 https://cgit.freebsd.org/src/commit/?id=2e30926a68 https://cgit.freebsd.org/src/commit/?id=6e0278408e macOS は FreeBSD のユーザーランドのコマンドを使用しているため、そのせいで 200112 のままだった可能性も考えられますが、シェルやカーネルは FreeBSD のものではないため、FreeBSD が変更になったからと言って macOS が更新されるとは限らないでしょう。Solaris 10 と 11 ではディレクトリごとに準拠バージョンが異なるバイナリが配置されており以下のようになります。Solaris

    祝🎉 POSIX.1-2024 (Issue 8) 改定!16年ぶりの大幅改定でシェルスクリプトはどう新しくなるのか? - Qiita
    rawwell
    rawwell 2024/06/16
    "一般的なシェルスクリプトが環境依存のコマンド、すなわち Unix/Linux に標準で含まれている OS 標準コマンド(POSIX コマンドを含む)に大きく依存しているのが原因"
  • なぜシェルスクリプトで高度なデータ管理にSQLiteを使うべきなのか? ~ UNIX/POSIXコマンドの欠点をSQLで解決する

    なぜシェルスクリプトで高度なデータ管理にSQLiteを使うべきなのか? ~ UNIX/POSIXコマンドの欠点をSQLで解決するShellScriptUNIXSQLitePOSIXQiitadelika 「利用者は数十億人!? SQLiteはどこが凄いデータベース管理システムなのか調べてみた」の続きです。 はじめに 複雑な構造のデータを扱うのであればシェルスクリプトや Unix (POSIX) コマンドでデータ管理を行うのは避けるべきだと思います。解決不可能な問題が多いからです。しかしそれでも何かしらの理由でやろうと考える(やらなければいけない)のであれば SQLite を使うのをおすすめします。シェルスクリプトや Unix コマンドは行単位の単純なテキストデータをシーケンシャルにデータ処理するのが前提となっており、改行や空白が含まれるデータや複雑な構造のデータ扱うのは苦手です。またシェル

    なぜシェルスクリプトで高度なデータ管理にSQLiteを使うべきなのか? ~ UNIX/POSIXコマンドの欠点をSQLで解決する
    rawwell
    rawwell 2022/04/02
    でもAIではpandasばっかりなんだよねあ
  • POSIX 準拠のシェルスクリプトでは find | xargs よりも find -exec {} + を使うべき! - Qiita

    POSIX 準拠のシェルスクリプトでは find | xargs よりも find -exec {} + を使うべき!ShellScriptBashshellPOSIX はじめに find の出力を xargs にパイプで渡すというのはよく見かける使い方ですが、find -print0 | xargs -0 が使えない POSIX 準拠のシェルスクリプトでは find -exec {} + を使った方が良いです。安全かつ十分に速いからです。よく見かける -exec {} ; ではなく -exec {} + ですので間違えないようにしてください。多くのケースでは + の方が優れているのですが ; ばっかり使われているのを見ると、意外と知られてない気がします。 少しだけ予備知識として、-exec {} ; は -exec {} \; と ; をバックスラッシュでエスケープするのがよく見る使い方

    POSIX 準拠のシェルスクリプトでは find | xargs よりも find -exec {} + を使うべき! - Qiita
    rawwell
    rawwell 2021/09/14
    "並列実行したいならば find -print0 | xargs -0 -P を使う"
  • 1