タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

ShellScriptとUNIXとPOSIXに関するfootnoteのブックマーク (3)

  • 今どきのシェルスクリプトは数値計算にexprを使わない(POSIX準拠) - Qiita

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

    今どきのシェルスクリプトは数値計算にexprを使わない(POSIX準拠) - Qiita
  • 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
  • なぜシェルスクリプトはPOSIX準拠でも環境依存が激しいのか? 〜POSIXの問題点とその解決策の案〜 - Qiita

    はじめに 一般的にシェルスクリプトは環境依存が激しいといわれています。一方で移植性を高くするための POSIX という標準規格があるのだからそれに準拠してシェルスクリプトを書けば問題ないはずだと考える人もいます。確かに POSIX は移植性を高くするための標準規格ですがシェルスクリプトに関してはあまり役に立ちません。この記事では POSIX の正しい理解と問題点を解説し、どうすればそれを解決できるのか?という案(まだ十分に検証されていないもの)を提示します。 なおこの記事はシェルスクリプトを使うという前提の話であるため、シェルスクリプト以外を使って解決する方法はこの記事の対象外です。もちろん実際にはシェルスクリプト以外の好きな言語を使って解決して構いません。 POSIX コマンドを批判するあなたは誰なの? まずはっきりさせておきたいのは、私がこの記事で批判する対象は POSIX すべてでは

    なぜシェルスクリプトはPOSIX準拠でも環境依存が激しいのか? 〜POSIXの問題点とその解決策の案〜 - Qiita
  • 1