並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 240件

新着順 人気順

パッケージ管理の検索結果41 - 80 件 / 240件

  • もっと使いやすいコマンドラインツール10選

    背景 ls、cd、psなどのコマンド。 いずれも30年前のもので、今でも毎日使っていますが、"オープンソースの世界には、これらの「古い」Linuxコマンドに代わり、より優れたコマンドラインツールがあるのだろうか?"と思いました。 本記事では、Linuxのコマンドと同じことができるだけでなく、より使いやすいパラメータ、一目でわかる表示、クロスプラットフォーム対応など、使い方、パフォーマンス、表示の面でより優れた新機能を追加したオープンソースのコマンドラインツールを10個まとめてみました。 1. dust(du) 開発言語: Rust Github: https://github.com/bootandy/dust スター数: 4.4k 代替コマンド: du 使用方法: dust プラットフォーム: Windows、Linux、macOS 説明: ディレクトリやファイルのサイズを一目でわかるよ

      もっと使いやすいコマンドラインツール10選
    • Linuxメモ : あると便利かもしれないRust製コマンドラインツール - もた日記

      インストール方法 bat ripgrep, ripgrep-all fd, fselect starship exa, lsd, nat nushell navi, tealdeer delta hyperfine xsv, csview py-spy bandwhich, gping, ht, dog hexyl, bingrep broot tokei genact, globe, glitchcat monolith shellharden fnm, volta pastel gitui, onefetch, git-interactive-rebase-tool skim watchexec dust, diskonaut, dua-cli, dutree zoxide ytop, bottom, zenith mcfly sd, desed topgrade pueue proc

        Linuxメモ : あると便利かもしれないRust製コマンドラインツール - もた日記
      • 日立に戻りたいわけがない。 - テストステ論

        新卒で日立へおれが新卒で入ったのは、日立製作所だ。 おれが面接を受けたのはシステム開発研究所というところだったが、 おれが入った年に研究所の再編成があって、横浜研究所というところに配属になった。 横浜研究所は横浜の戸塚というところにあり、 寮はそこまでバスで一本のところにあった。 寮生活は隣人の先輩が発狂して泣き叫びだしたり、色々トラブルはあったが、 まぁ楽しかった。 寮というのはなかなかいいものだ。 京大で吉田寮や熊野寮にわざわざ住みたいという人がいることも微妙にだが理解出来る。 システム開発という名前のとおり、 そこはソフトウェアの応用研究をやってる研究所で、 と言っても企業の応用研究というのは事業所から依頼された研究(通称、依頼研)だったり、 あるいはもう少し先のことを考えた先行研と呼ばれるものがあったするくらいで、 大学のような研究をやってるというところではないのだが、 まぁおれ的

        • 本番サーバー60台のホスト名を全部 cat にしてしまった話 - Qiita

          この記事は、本番環境などでやらかしちゃった人 Advent Calendar 2023 の4日目です。年末進行、いかがお過ごしでしょうか?みなさま無事に仕事が納まることを願っております… 新人インフラエンジニアが、本番ウェブサーバー60台のホスト名を全部 cat にしてしまった話について、ここに供養させていただきたいと思います 背景 おそらく今から7年くらい前、インフラエンジニアとして転職してきて1年ほどが経ち、本番環境での作業もこなれてきたなというバッチリのタイミングで事を起こしてしまいました。サーバーは CentOS 6 だったと思います。 職場としてはまだまだベンチャー感にあふれ大きな裁量が与えられスピード感のある環境ながら、サービスの登録ユーザー数は1,000万を超え、本番環境の規模としては既になかなかの大きさがあり、ウェブサーバーだけでも60台くらいあったと思います。ひと山につき

            本番サーバー60台のホスト名を全部 cat にしてしまった話 - Qiita
          • Linux Networking Tools: 101

            Representation Learning for Scale-free Networks: スケールフリーネットワークに対する表現学習

              Linux Networking Tools: 101
            • シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくる - Qiita

              シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくるShellScriptBashUNIXshellPOSIX はじめに シェルスクリプトの変数代入で = の前後にスペースを置くことができない理由は、検索すれば「プログラマーの君! 勘違いするな! シェルスクリプトでは読みやすさのためにスペースを置くな!! という話」のような記事がすぐに見つかります。記事に書いてあるとおり変数代入とコマンド呼び出しと区別がつかないからです。それは間違いではないんですが、私はもう少し説明が足りないと感じています。そこで今回は = の前後にスペースを置けない本当の理由を解説したいと思います。 の前に皆さんにはこの話を読みながら、自分がシェルスクリプトの言語設計者だったとしたら、どういう言語仕様にするかを考えて欲しいです。なぜかと言うとシェルスクリプトの文

                シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくる - Qiita
              • シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita

                はじめに シェルスクリプトで二重起動防止やロックをする方法を検索すると、いろいろな方法や書き方が見つかりますが、どれを使えばよいのか、本当に正しく動くのか、不安になりますよね? ディレクトリ (mkdir) やシンボリックリンク (ln) を使った独自実装の例も見かけますが、エラー発生時や予期せぬ電源断、CTRL+C で止めたときなどでも問題は発生しないのでしょうか? まず、ディレクトリやシンボリックリンクを使った独自実装はしない。これを肝に銘じてください。シェルスクリプトでのロック管理はとても難しく、一般的な排他制御の知識に加えて、シェルスクリプト特有の問題、シグナルやトラップ、サブシェルや子プロセスの問題、さらには特定のシェル固有の仕様やバグなどさまざまな問題に対処する必要があり大変です。独自実装の例では古いロックファイルが残ってしまい、それをいつどのタイミングで片付ければ安全なのか?

                  シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita
                • あなたはps -ef派なのか、auxf派なのかをちょっとだけまとめてみた | ten-snapon.com

                    あなたはps -ef派なのか、auxf派なのかをちょっとだけまとめてみた | ten-snapon.com
                  • コンパイラが作ったバイナリをつなぎ合わせるプログラム 「lld」の作者が語る、リンカの仕組み

                    Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。植山氏は、制作中のリンカである「mold」について発表しました。全2回。前半は、リンカの概要について話しました。 LLVMのリンカ「lld」オリジナルの作者 植山類氏:植山類です。今僕が作っているmoldというリンカについて発表します。 今回の発表の概要です。リンカが何かを知っている人はそんなにたくさんいないと思うので、まず説明します。次に、「mold」のポイントは速いことなのですが、速いと何がうれしいのかを説明します。そのあと、どれくらい速いのかを説明した上で、どう実現されているのか、概要を紹介します。詳細になると何時間あっても終わらないので、かなりハイレベルな話をします。 自己紹介のスライドを入れていませんが、僕はリンカを何度か作ったことがあって、LLVMのlld

                      コンパイラが作ったバイナリをつなぎ合わせるプログラム 「lld」の作者が語る、リンカの仕組み
                    • お気に入りのコマンドラインツールを淡々と紹介する

                      めちゃくちゃ良い記事でした。 「OSS は使っていることを公言するだけでも貢献になる」と songmu さんが言っていたので、私も貢献したいと思います。 僕も貢献したいのでよく使うコマンドラインツールを紹介していきます。 特定のプログラミング言語等に依存するツールは省いています。 actionlint - GitHub Actions の Workflow ファイルの静的検査 GitHub Actions の Workflow ファイルの静的検査ツールです。 かなり精度が高く、色々な設定ミスを検知してくれます。 エラーメッセージも見やすくて助かります。 aicommits - コミットメッセージを自動生成 変更内容を元に自動でコミットメッセージを AI が生成してくれるツールです。 コミットをする前にちゃんと確認してくれるのも安心感があって良いです。 cLive - ターミナル操作を自動化

                        お気に入りのコマンドラインツールを淡々と紹介する
                      • シェルスクリプトを書くのをやめる - blog.8-p.info

                        今年から、できるだけシェルスクリプトを書くのをやめようとしている。私が毎日 zsh に打ち込んでいるのも広義のシェルスクリプトだし、自分用の雑なスクリプトを書くことはあるけれど、チームの他の人も将来に使ったり改変したりするようなものは、なるだけ他の言語を使っている。 シェルスクリプトを書くのは難しいし、その難しさは、学ぶに値しないといったら言い過ぎかもしれないけれど、2021年に初心者が取り組むべき問題とは言い難いと思う。 シェルは悪いプログラミング言語である Bash Strict Mode とかを使ってみても、シェルスクリプトには落とし穴が多すぎる。自分で書いたものを自分で使っている分には大丈夫なのだけど、スクリプトがチーム内で使われるようになると、考慮していなかったところ、例えばファイル名に空白文字が含まれるとか、そういうレベルの微妙なところで、ちゃんと書かれていないスクリプトは壊れ

                        • JSONをいい感じに見るCLIを作った

                          その他 OS の方は GitHub のrelease ページから DL することができます。 使い方 tv はミニマムな CLI として作ったのでテーブル表示の機能とそれに付随したオプションのみを提供しています。 配列になっている JSON をテーブル表示する キーを指定することでそのキーを使ってソートできる いくつかのスタイルでテーブルを表示できる 以上が主の機能です。 Table 表示 ユースケースとして JSON が帰ってくる API を想定します。 API の例として jsonplaceholder を利用します。 今回は https://jsonplaceholder.typicode.com/users を使います。 この API は以下のようなデータが返ってきます。 $ curl -s https://jsonplaceholder.typicode.com/users [

                            JSONをいい感じに見るCLIを作った
                          • 『マスタリングLinuxシェルスクリプト 第2版』、こういう1冊手元に有るとずっと使える本はちゃんと買っておきたいですね - Magnolia Tech

                            マスタリングLinuxシェルスクリプト 第2版 ―Linuxコマンド、bashスクリプト、シェルプログラミング実践入門 作者:Mokhtar Ebrahim,Andrew MallettオライリージャパンAmazon 令和最新版のシェルスクリプトの入門書とリファレンスがセットになった1冊。手元に置いておくと安心感ありますよね。 令和最新版なので、冒頭からデバッグしたいならVisual Studio Code がオススメ、と出てきます。 コンテナ使おうと思ったらシェルスクリプトの読み書きの出番がどんどん増えていって、コンテナに一番必要なスキルはシェルスクリプトのスキルでは?と思っている今日この頃です(違います)が、そのくらいの用途に必要な要素は全部盛り込んであり、シェルスクリプトの文法と実践的な使い方に加えて、一緒に利用されることの多いgrep、awk、sedといったコマンドの解説も併せて載

                              『マスタリングLinuxシェルスクリプト 第2版』、こういう1冊手元に有るとずっと使える本はちゃんと買っておきたいですね - Magnolia Tech
                            • Bashを学べる全20回の入門動画 MicrosoftがYouTubeで無料公開

                              Microsoftは2023年2月21日(米国時間)、初学者向けにBashを解説する全20回の動画シリーズ「Bash for Beginners」をYouTubeで公開した。 開発者向けQ&Aサイト「Stack Overflow」が2022年に実施した開発者調査でも、Bashは最も人気のある技術の7位に選ばれている。Bashは汎用(はんよう)性の高い強力なスクリプト言語であり、タスクの自動化、ファイルの管理、クラウド環境での作業などさまざまな領域で利用されている。 なぜBashの学習が他のスキルに役立つのか 関連記事 未経験者に「プログラミング言語」は求めない 調査で分かった企業が期待するスキルとは パーソルキャリアは、「doda ビジネスパーソンと企業の転職意識ギャップ調査」の結果を発表した。それによるとITエンジニア職「未経験歓迎」求人の割合は2年前(2021年1月)に比べて約3.0倍

                                Bashを学べる全20回の入門動画 MicrosoftがYouTubeで無料公開
                              • "Linuxの生みの親"トーバルズ氏:「私はもうプログラマーではない」

                                Steven J. Vaughan-Nichols (Special to ZDNET.com) 翻訳校正: 石橋啓一郎 2019-11-01 07:30 Linuxの生みの親であるLinus Torvalds氏は、もう講演はしていない。フランスのリヨンで開催された「Open Source Summit Europe」で同氏が行ったのは、友人であるVMwareの最高オープンソース責任者Dirk Hohndel氏との対話であり、同氏は以前もこの形式で登壇している。Torvalds氏はこの基調ディスカッションで、自分はもはやプログラマーではないと考えていることを明らかにした。 では、誰もが「プログラマーの中のプログラマー」だと考えている同氏は今、何をやっているのだろうか。Torvalds氏は次のように説明した。 もうコーディングは全然やっていない。私がコードを書くのは、ほとんどがメールの中だ。

                                  "Linuxの生みの親"トーバルズ氏:「私はもうプログラマーではない」
                                • 「UNIXというOSが見当たらない」というツイートに歴史の語り部が集まる 2020-7

                                  リンク note(ノート) さよなら、愛しのFreeBSD|力武 健次 / りきたけ けんじ|note 2019年1月末でFreeBSDに関連する開発活動を止めることにした。とても愛していたOSだけに身を切られるような思いは否めなかったが、別れが来るなら自分の自由になるうちにと思い、決断した。以下は個人的な想いを綴っている。 BSDの大元は、カリフォルニア大学バークレイ校で作られたオペレーティングシステム、今風に言えば基本ソフトだ。Berkeley Software Distributionというのがもともとの名前だ。 1985年に自分がUNIXに触れたころから憧れていたのがこのBSDだった。当時のBSDは 287 users 3 発明家で技術コンサルの北神 @nonNoise 自作Linux基板作るんだから、Linuxについてお詳しいんでしょ?って思うじゃん! 言ってもまだLinuxをビ

                                    「UNIXというOSが見当たらない」というツイートに歴史の語り部が集まる 2020-7
                                  • SSH接続をWebブラウザの純粋なHTTP上で実現する - nwtgck / Ryo Ota

                                    HTTPといえばHTML/CSS/JavaScriptや画像などの小さめの限りがあるデータを手に入れるためによく使われている印象がある。REST APIのようなHTTPを使ったAPIでも限りのあるデータがリクエストとレスポンスになる印象が強い。

                                      SSH接続をWebブラウザの純粋なHTTP上で実現する - nwtgck / Ryo Ota
                                    • JSON を行単位にわかりやすく展開してくれるコマンド gron がピンポイントでとても便利

                                      JSON を行単位にわかりやすく展開してくれるコマンド gron がピンポイントでとても便利 2022-06-13-1 [Programming] コマンドラインでの JSON の操作には jq (軽量JSONパーサ)[2017-10-24-1] を使っています。万能で便利なんですが、奥まったところにある値だけを取りたいときとかちょっと面倒なんですよね。ちらっと値を見たいだけなのにおおげさになっちゃいがち。 ということで、 gron というのを使ってみました。 GitHub - tomnomnom/gron: Make JSON greppable!JSONをgrepしやすくするコマンドラインツールgronの紹介 - Qiitagronでjsonの扱いが楽になった話 – Tower of Engineers あ、これでいいや。 いわゆる「顧客(=私)が本当に必要だったもの」だわ。 例えば、

                                        JSON を行単位にわかりやすく展開してくれるコマンド gron がピンポイントでとても便利
                                      • 入門 シェル実装

                                        開発者にとってシェルが必要不可欠なものであることは論を俟ちませんが、当たり前の存在すぎてこれがどのように実現されているのかを知る機会はあまりないと思います。本トークでは、シェルがどのように実現されているのかを、実際にシェルを実装する過程を通じてお話しします。 ※ もともとのトークのタイトルは「入門 シェル」でしたが,わかりやすさのため「入門 シェル実装」にタイトルを変更しています.Read less

                                          入門 シェル実装
                                        • 大規模システムでの Linux のメモリ管理

                                          (This post is also available in English.) この記事は Linux memory management at scale を 著者の Chris Down さんの許可 を得て Hiroaki Nakamura が日本語に翻訳したものです。 原文のライセンス は CC BY-SA 4.0 であり、翻訳のライセンスも同じく CC BY 4.0 とします。 cgroup2 プロジェクトでの私の仕事の一部として Linux システムのリソース管理についてエンジニアと話すことに多くの時間をかけてきました。 これらの会話を通じてどんどん明らかになってきた 1 つの事実は多くのエンジニアは、シニア SRE たちでさえも、 Linux のメモリ管理についていくつかのよくある誤解を持っていて、そしてそれが彼らがサポートするサービスやシステムが本来確実に稼働したり効率的

                                            大規模システムでの Linux のメモリ管理
                                          • 『なるほどUnixプロセス』を読む前にちょっとだけナルホドとなる記事

                                            はじめに この記事では、UnixのプロセスのことやUnix環境のことについてチョットワカッタ気持ちになっていただくことを目的に、RubyをつかってUnixプロセスについて触れていきます。読み終わったあと、チョットワカッタカモという気持ちになっていただけたり、著者が訳者として関わっている『なるほどUNIXプロセス』を手に取ってもらえたりすると幸いです。 なお、この記事の内容は、オープンソースカンファレンス2015 Hokkaido での jus 研究会で行った発表内容をまとめ、原稿におこしたものになります。 それでは、さっそく本題に入っていきましょう。 コマンドを実行する ふだん、みなさんは作業中にターミナルからたくさんのコマンドを実行しているはずです。まずは、この「ターミナルからコマンドを実行する」ことについて見ていきましょう。 コマンドとプロセス Unixでは、あらゆるコマンド、プログラ

                                            • sudo新一

                                              sudo新一.md オレは高校生シェル芸人 sudo 新一。幼馴染で同級生の more 利蘭と遊園地に遊びに行って、黒ずくめの男の怪しげな rm -rf / 現場を目撃した。端末をみるのに夢中になっていた俺は、背後から近づいてきたもう1人の --no-preserve-root オプションに気づかなかった。 俺はその男に毒薬を飲まされ、目が覚めたら・・・ OS のプリインストールから除かれてしまっていた! 『 sudo がまだ $PATH に残っていると奴らにバレたら、また命を狙われ、他のコマンドにも危害が及ぶ』 上田博士の助言で正体を隠すことにした俺は、 which に名前を聞かれて、とっさに『gnuplot』と名乗り、奴らの情報をつかむために、父親がシェル芸人をやっている蘭の $HOME に転がり込んだ。ところが、このおっちゃん・・・とんだヘボシェル芸人で、見かねた俺はおっちゃんになり

                                                sudo新一
                                              • ファイル書き込みをするプログラムで気をつけた方がよいこと | IIJ Engineers Blog

                                                この記事について この記事では、ファイルに書き込みを行うプログラムを実装する時の注意点について説明します。 ファイル書き込みは、プログラミングにおいて比較的よく利用される機能でありながら、実装時に注意していないと、システムクラッシュ(意図しない電源の喪失や OS のクラッシュ等)後にファイル上のデータが整合性を失う可能性、平たく言えば、データが破損する場合があります。 今回の主な内容はトランザクションに関連する事柄で、ご存知の方からすると当たり前と思われることだと思われますが、執筆者がプログラミングの勉強を始めて以降知らない期間が長かったことと、他にもご存知ない方がある程度いらっしゃるのではないかと思ったため、このように記事にさせていただきました。 また、ここで説明する注意点は、クラッシュ後にデータの整合性が重要でない場合は、気を付ける必要がないものであることを先に書いておきます。 先にこ

                                                  ファイル書き込みをするプログラムで気をつけた方がよいこと | IIJ Engineers Blog
                                                • Linuxコマンドの代替コマンド「ncdu」「htop」「tldr」「jq」「fd」とは?

                                                  Opensource.comは6月25日(米国時間)、「5 modern alternatives to essential Linux command-line tools|Opensource.com」において、古くから使われているUNIX系コマンドの代替ツールを紹介した。代替ツールは古くから使われているコマンドと比べて、見た目が良かったり使いやすさが向上したりしているといった特徴があるという。 取り上げられている代替ツールは次のとおり。

                                                    Linuxコマンドの代替コマンド「ncdu」「htop」「tldr」「jq」「fd」とは?
                                                  • Wireshark によるパケット解析講座 1: Wiresharkの表示列をカスタマイズする

                                                    This post is also available in: English (英語) 概要 Wireshark は無料で利用できるプロトコル アナライザです。 Wireshark を使うと、ネットワーク トラフィックをキャプチャーしたり、キャプチャーしたパケットを表示させることができます。ITの専門職についているかたがたは、このツールを使って日々ネットワークのさまざまな問題を解決しています。セキュリティの専門家も、この Wireshark を使ってマルウェアが生成するトラフィックを確認しています。 そこで、今回は Wireshark の便利な機能のひとつである表示列のカスタマイズをご紹介したいと思います。Wireshark はデフォルトでは、非常にたくさんの情報を列表示してくれますが、これをカスタマイズすることで皆さん自身の用途に使いやすいようにできます。 本稿は Wireshark

                                                      Wireshark によるパケット解析講座 1: Wiresharkの表示列をカスタマイズする
                                                    • UnixPornをお洒落に楽しむ

                                                      UnixPornとは? 「UnixPorn」というワードを見かけた事はありますか? もし、初耳だという方は「UnixPorn」をgoogleで画像検索してみましょう。 大雑っぱに言えば、「UnixPorn」とは、 PC-UNIXのカスタマイズされたデスクトップスクリーンショットのことや、 そのスクリーンショットが沢山投稿されているredditの板のことを指しています。 r/unixporn Submit screenshots of all your *NIX desktops, themes, and nifty configurations, or submit anything else that will make ricers happy. https://www.reddit.com/ そして、「UnixPorn」は、このちょっといかがわしげなPornという文字と、 ダークでハ

                                                        UnixPornをお洒落に楽しむ
                                                      • Minimal safe Bash script template

                                                        Published on December 14, 2020   ·   Updated on December 16, 2020 Bash scripts. Almost anyone needs to write one sooner or later. Almost no one says “yeah, I love writing them”. And that’s why almost everyone is putting low attention while writing them. I won’t try to make you a Bash expert (since I’m not a one either), but I will show you a minimal template that will make your scripts safer. You

                                                          Minimal safe Bash script template
                                                        • Wave Terminal

                                                          An Open-Source, AI-Native, Terminal Built for Seamless Workflows

                                                            Wave Terminal
                                                          • UNIXができた頃のコンピューター事情

                                                            UNIXができたころのことを話そうとするとその頃のコンピューター事情が今とだいぶ違うのでなかなか話が伝わりません。そこでそのころ(1970年ごろ)のコンピューター事情について、正確性はちょっと置いておいて、分かりやすいようにざっくりと説明したいと思います。 アポロ11号の月面着陸が1969年なのでその辺りの映画などに出てくるでかいコンピューターを想像するとイメージしやすいかもしれません。 ## 大雑把な分類 初期のUNIXが開発されたころ(1970年ごろ)に使われていたコンピューターは主に下記の二種類でした。 - メインフレーム - ミニコン(ミニコンピューター) このころ主に"コンピューター"といえば今で言う"メインフレーム"のことを指していました。 マイコン(マイクロコンピューター)/パソコンは1980年ごろ普及しました。しかしパソコンでUNIXを動かすのが実用的になったのは1990年

                                                              UNIXができた頃のコンピューター事情
                                                            • Bash Scriptの作法 - Qiita

                                                              はじめに チーム開発でシェルスクリプト(特にBash Script)を書く際に守るべきルールをまとめます。 シェルスクリプトのコードレビューをする際等にお役立てください。 スクリプト名 -区切りの小文字英数字(いわゆるkebab-case)をつける。拡張子は.sh. これは特に理由があるわけではないので_区切りでもよいし、チーム内にzshやfish等の他Shell愛好家がいる場合は拡張子は.bashでも良い。どちらにせよチーム内では統一しておかないと混乱の元となる。 改行コード LFを使用する。CRLFだと動作しないので書く際に間違うことはないが、Windows上のgitのautocrlf設定によってはご丁寧にCRLFでチェックアウトされてしまう。 避けるためにはgit config --global core.autocrlf inputとするか、.gitattributesをレポジトリ

                                                                Bash Scriptの作法 - Qiita
                                                              • 名著「入門UNIXシェルプログラミング」の超詳細なレビューをしてみた(古い内容の訂正) - Qiita

                                                                はじめに そりゃまあ 30 年も経てば古くなりますよ。「入門UNIXシェルプログラミング」は今もシェルスクリプトに関するオススメの本として名前が挙がる名著です。しかしこの本は古い本です。POSIX でシェルが標準化される以前の本で、内容から判断するとおそらく 1990 年ぐらいの常識に基づいて書かれています。 古いから参考にならないと言うつもりはありません。しかしどれだけ優れた本でも時間の流れには勝てません。良書であると思っているからこそ、古くなってしまった内容は訂正する必要があると考えています。なおシェルスクリプトに関する古い本はこれだけではありません。オライリーから出版されている本も古い本ばかりです。いつ頃に(原書が)書かれた本なのかを確認した方が良いでしょう。 ということでレビューというていで、古くなってしまった内容の訂正を行いたいと思います。新しく「入門UNIXシェルプログラミング

                                                                  名著「入門UNIXシェルプログラミング」の超詳細なレビューをしてみた(古い内容の訂正) - Qiita
                                                                • メモリダンプと模様が見える男|kamezawa.hiroyuki

                                                                  10年以上前の昔話であり、そんなこともあったのねという話。あるいはエンタープライズサポートってそんなことやってるのねという話。 カーネルメモリダンプLinuxカーネルをエンタープライズに使おうとした企業、富士通やIBM、日立といった企業がこぞってカーネルに入れようとした機能がカーネルがパニックした時に「なぜコケたのか」調べるための機能であった。その最たるものがメモリダンプだった。この機能はカーネルパニックが起きた後のメモリをディスクに吐き出す。この吐き出されたメモリイメージをダンプと呼び、これをデバッガに食わせて原因調査をする。 カーネルデベロッパはパニックが起きたら再現条件を探して理詰めでバグを探すのが得意だが、顧客先でパニックが起きたら「再現させてくれ」とは中々言えないのでこの機能はサポートには重要だった。そして、ダンプ調査の技を持つエンジニアも居た。 地雷型メモリ破壊パニック色々と調

                                                                    メモリダンプと模様が見える男|kamezawa.hiroyuki
                                                                  • プログラミングを始めたころとは考え方が全然変わっていることに気づいてびっくりした話 - 覚書

                                                                    家にパソコンがはじめて来てから30年くらい、プログラミングを始めてから20年以上が経ちました。その間、IT技術に対する愛は変わらずに、ずっと走り続けてきました。では当時の自分と今の自分で何が違うのだろうと考えてみたところ、めちゃくちゃ変わっていたのでびっくりました。本記事では何がどう変わったのか、それを見てなにを思ったかなどを書きます。 昔は次のようなこだわりがありました。 大きなものは一つの仕事をする単純で小さなツールを組み合わせて作るべし ソフトウェアは可能な限り設定可能になっていてほしいし、それを自分の好みになるまでカリカリチューニングしたい 可能な限りすべてキーボードだけで操作できるようになっていてほしい いわゆるUNIX哲学をはじめとして、いろんな本やWebサイトなどに強い影響を受けていることがよくわかります。 ところが今は次のように全然違うことを考えています。 トラブルハマった

                                                                      プログラミングを始めたころとは考え方が全然変わっていることに気づいてびっくりした話 - 覚書
                                                                    • ls -l はなぜ事故を起こすのか

                                                                      はじめに この記事は以下の記事で事故がなぜ起きたかを技術的に理解し筆者のtipsを共有しようと思い書きました。あくまで筆者のtipsですので、これが正しいとは限りません。 やはり、下記のコマンドが原因でした。 [root@foo script]# ls -l | sh 事故そのものは ls コマンドに -l を付けて実行してしまった事で、ls コマンドが出力したシンボリックリンクが以下の様になってしまったという話です。

                                                                        ls -l はなぜ事故を起こすのか
                                                                      • x86-64機械語入門

                                                                        この記事はx86-64の機械語を書けるようになるためのガイドとなることを目指します。読者はアセンブリー言語について既にある程度知っていることを想定します。 情報源 x86-64の機械語のオフィシャルなガイドはIntelのSoftware Developer ManualまたはAMDのAMD64 Architecture Programmer's Manualです。 Intel SDM: Intel® 64 and IA-32 Architectures Software Developer Manuals AMD64 Architecture Programmer's Manual, Volumes 1-5 このほか、Cから呼び出される関数を定義したり、Cの関数を呼び出すためには、呼び出し規約の知識も必要です。使用される呼び出し規約はOSに依存し、Unix系では主にSystem V ABI

                                                                          x86-64機械語入門
                                                                        • rjとtとjqコマンドでHTTPレスポンスを試験する - ゆーすけべー日記

                                                                          Web 開発者は HTTP レスポンスをよく見る。 以前 CDN を導入する際に、キャッシュがヒットしているかどうか、どこのエッジがキャッシュを返しているかを確認するためにヘッダをよく見ていた。また、ヘッダだけではなく、TTFB といったレスポンスタイムも気にしている。とにかく HTTP レスポンスをよく見る。 HTTP レスポンスを確認する3つの方法 Chrome さえあれば DevTools を見て一目瞭然である。 とはいえ、コマンドラインで確認したい時がしばしばある。 GUI を操作するよりも手軽である。 その場合はcurlコマンドを叩けばよい。 これでプロトコル、ステータス、ヘッダが分かる。 また、レスポンスタイムを測りたければ、その名もttfb.shというcurlをラップしたコマンドラインツールがある。 https://github.com/jaygooby/ttfb.sh この

                                                                            rjとtとjqコマンドでHTTPレスポンスを試験する - ゆーすけべー日記
                                                                          • findコマンドの使い方を簡単に理解するための7つのルール+実践的な知識 - Qiita

                                                                            はじめに find コマンドの使い方は、ざっくり調べただけではよくわからんとなりますが、見逃しがちなルールを知れば簡単に理解できます。find コマンドに限りませんが使い方を調べるのが面倒だからと曖昧な理解で使うと逆にもっと分からなくなって時間がかかります。急がば回れ、理解して正しく使ったほうがシンプルで楽で簡単です。この記事では find コマンドの使い方を理解するために必要なルールと使い方の実践的な知識をまとめました。 Q&A(?): -type や -perm の説明はしないの? ⇒ それらはドキュメントを読むか検索すればすぐにわかることで難しいポイントではありません。重要なのは基本のルールを理解することです。 関連記事 POSIX 準拠のシェルスクリプトでは find | xargs よりも find -exec {} + を使うべき! 移植性の話はこちら ⇒ findコマンドのオ

                                                                              findコマンドの使い方を簡単に理解するための7つのルール+実践的な知識 - Qiita
                                                                            • 運用・保守 インフラエンジニアの時によく使ってたLinuxコマンド - Qiita

                                                                              概要 Linuxのコマンドって多種多様にあるけど、 どういうのを知ってたら良いのかという情報があんまり無いなと思ったので、 インフラエンジニアで運用と保守を経験してよく使うコマンドと、どういう時に使ってたかを書いて行こうと思います。 注意 Linuxのディストリビューション(種類)はRHEL、CentOSです。他のディストリビューションだとパスが違ったり使えないコマンドだったりするのでご留意ください。多分そんなに多く無いはず。。 オプションとかは基本書いてないので、内容読んで興味あれば調べてみてください。需要あれば実行例もあげますが。。 運用・保守でよく使ってたLinuxコマンド 指定したパスにあるファイル、ディレクトリを拡張子 .tar.gz で一つにまとめられます。 あとは解凍も出来ます。zipみたいなもんです。Linuxサーバで取得した情報をひとまとめにしてローカルに持ってくるという

                                                                                運用・保守 インフラエンジニアの時によく使ってたLinuxコマンド - Qiita
                                                                              • 排他制御の基礎の基礎

                                                                                はじめに システムに存在するリソースには同時にアクセスしてはいけないものが多々あります。身近な例を挙げると、Ubuntuのパッケージ管理システムのデータベースがあります。aptコマンドの動作によってこのデータベースは更新されるのですが、同時に2つ以上のaptが動作できたとすると、データベースが破壊されてシステムが危機的状況に陥ります。 このような問題を避けるために、あるリソースに同時に1つの処理しかアクセスできなくする排他制御というしくみがあります。排他制御はOSが提供する重要な機能の一つです。 排他制御が必要なケース 排他制御は直感的ではなく非常に理解が難しいのですが、ここでは比較的理解が簡単なファイルロックというしくみを使って説明します。説明には、あるファイルの中身を読みだして、その中に書いてある数字に1を加えて終了するincというという単純なプログラムを使います。

                                                                                  排他制御の基礎の基礎
                                                                                • The Missing Semester of Your CS Education (日本語版)

                                                                                  The Missing Semester of Your CS Education (日本語版) 大学の講義ではオペレーティングシステムから機械学習まで、 コンピュータサイエンスの様々な発展的トピックを学びます。 しかし、重要であるにも関わらず講義で教わることはめったになく、 したがって自分で学ばなければならないことがあります。 それは「コンピュータを操作するツールを習熟すること」です。 本講義では、コマンドライン操作をマスターすること、パワフルなテキストエディタを使いこなすこと、 バージョンコントロールの様々な機能に触れること、などなどを教えます! 学生は大学生活を過ごすうえでそういったツールを使うことに何百時間も費やします (その後のキャリア全体を考えれば何千時間も使うと言えるでしょう)。 よって、ツールを使う経験を可能な限り流暢で淀みない状態にしておくということは、 非常に有意義であ