並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 444件

新着順 人気順

シェルの検索結果1 - 40 件 / 444件

シェルに関するエントリは444件あります。 linuxshellコマンド などが関連タグです。 人気エントリには 『MySQLでプライマリキーをUUIDにする前に知っておいて欲しいこと | Raccoon Tech Blog [株式会社ラクーンホールディングス 技術戦略部ブログ]』などがあります。
  • MySQLでプライマリキーをUUIDにする前に知っておいて欲しいこと | Raccoon Tech Blog [株式会社ラクーンホールディングス 技術戦略部ブログ]

    株式会社ラクーンホールディングスのエンジニア/デザイナーから技術情報をはじめ、世の中のためになることや社内のことなどを発信してます。 bashパフォーマンスMySQLInnoDBDB設計インデックス こんにちは、羽山です。 今回は MySQL のプライマリキーに UUID を採用する場合に起きるパフォーマンスの問題を仕組みから解説します。 MySQL(InnoDB) & UUID のパフォーマンスについては各所でさんざん議論・検証されていますが、論理的に解説した記事が少なかったり一部には誤解を招くようなものもあるため、しっかりと理由から理解するための情報として役立つことができればと思っています。 UUID と比較される古き良き昇順/降順のプライマリキーはというと、 MySQL の InnoDB において良いパフォーマンスを出すために縁の下の力持ちのような働きをしてくれているケースが実は少な

      MySQLでプライマリキーをUUIDにする前に知っておいて欲しいこと | Raccoon Tech Blog [株式会社ラクーンホールディングス 技術戦略部ブログ]
    • Mac を買ったら必ずやっておきたい初期設定を、全て自動化してみた

      成果物 https://github.com/ulwlu/dotfiles/blob/master/system/macos.sh このスクリプトに全ての設定と、設定可能なオプションをコメントで記載しています。誰でもこのスクリプトのコメントを外したり任意の値を入れる事で使用可能です。 世界中のいくつかのdotfilesにはmacos.shが存在し、ある程度のMacOSの設定自動化を実現しています。しかし何百と見た中で、全設定と設定可能なオプションを全て網羅して記載しているのは恐らく初です。 これらの設定は破壊的なものではなく、いつかアプデによりキーが有効でなくなっても壊れる事はありません。壊れるのは~/ApplicationSupport/Dockディレクトリ配下のファイルを移動したり、sqlite群に無効な値をいれた時のみです(後述)。 この記事は何か dotfiles Advent C

        Mac を買ったら必ずやっておきたい初期設定を、全て自動化してみた
      • ITエンジニアが投票した「ITエンジニア本大賞2022」ベスト10発表。「シェル・ワンライナー160本ノック」「モノリスからマイクロサービスへ」「恐れのない組織」など

        ITエンジニアが投票した「ITエンジニア本大賞2022」ベスト10発表。「シェル・ワンライナー160本ノック」「モノリスからマイクロサービスへ」「恐れのない組織」など 「ITエンジニア本大賞」は、仕事の役に立った本、初学者におすすめの本、ずっと手元に置いておきたい本など、おすすめの本をITエンジニアがWeb投票で選ぶイベントです。 主催は翔泳社ですが、対象となる書籍は出版社を問わず技術書、ビジネス書全般となっています。刊行年も関係なく、これまで大賞に選出された書籍を除き、この1年を振り返っておすすめしたい書籍が対象となります。 今回発表されたのは技術書部門とビジネス書部門それぞれのベスト10です。現時点では50音順に並んでいます。 このなかから特に投票の多かった技術書3冊、ビジネス書3冊について、同社が2月17日と18日に開催する「Developers Summit 2021(デブサミ20

          ITエンジニアが投票した「ITエンジニア本大賞2022」ベスト10発表。「シェル・ワンライナー160本ノック」「モノリスからマイクロサービスへ」「恐れのない組織」など
        • なぜ今シェルスクリプトを学ぶのか・シェルスクリプトのTips - 理系学生日記

          会社の中でシェルスクリプトについての話をすることにしたので、このエントリはそのためのものです。 個人的な好みとかもいろいろ入ってしまっているので、そのあたりは取捨選択してください。 なぜ今シェルスクリプトを学ぶのか 公開されているSRE本をマルっとPDF化する SpotBugsのViolationレポートをMerge Requestのコメント投稿する ぼくの互換性についての考え方 何で書くか シェルスクリプトをうまく書くには ShellCheckを使う バッドパターンとその修正 line-by-lineの処理が多い lsを使う ls /directory | grep mystring ls | grep -v 'log$' lsの結果をループさせる 良いシェルスクリプトを書くためのTIPS set -euする 文字列は基本的にクオートする 局所変数にはlocalを使う 定数は読み取り専用

            なぜ今シェルスクリプトを学ぶのか・シェルスクリプトのTips - 理系学生日記
          • シェルスクリプトを書くときにいつもやるやつを調べた

            bash のシェルスクリプトを書くときに、いつも脳死で以下をやっている。(同僚が整備してくれたものをコピペしている) エディタなり CI で shellcheck をまわす set -euxo pipefail と冒頭に書く こんな感じ #!/bin/bash set -euxo pipefail いつまでもコピペではさすがにアレなので、意味を調べたメモ。 shellcheck koalaman/shellcheck: ShellCheck, a static analysis tool for shell scripts イケてない書き方に警告を出してくれる それぞれの警告にはエラーコード割り振られていてとても便利 エラーコードごとに正誤例、解説が書かれているのでわかりやすい SC1000 の例 CI もそうだし、エディタのプラグインも充実 しているのでとりあえず入れておくと良い set

              シェルスクリプトを書くときにいつもやるやつを調べた
            • スーパーコンピュータシステムのファイル消失のお詫び | お知らせ | 京都大学情報環境機構

              京都大学学術情報メディアセンター センター長 岡部 寿男 2021年12月14日 17時32分 から 2021年12月16日 12時43分にかけて,スーパーコンピュータシステムのストレージをバックアップするプログラム(日本ヒューレット・パッカード合同会社製)の不具合により,スーパーコンピュータシステムの大容量ストレージ(/LARGE0) の一部データを意図せず削除する事故が発生しました. 皆さまに大変なご迷惑をおかけすることになり,深くお詫び申し上げます. 今後,再びこのような事態の生じることのないよう再発防止に取り組む所存ですので,ご理解をいただきますよう,どうぞよろしくお願いいたします. ファイル消失の影響範囲 ・対象ファイルシステム: /LARGE0 ・ファイル削除期間:2021年12月14日 17時32分 ~ 2021年12月16日 12時43分 ・消失対象ファイル:2021年12

              • Linuxの基礎用語を完全理解するためにエンジニアが作成した「10のミニプロジェクト」とは?

                by Adam Harvey Linuxを利用していると「シェル」や「grep」「プロセス」といった言葉を目にします。エンジニアのCarl Riis氏はそんなLinuxの基礎用語の意味や仕組みをさまざまなウェブサイトから学習し、「10のミニプロジェクト」を作成することでスキルを向上させたとして、その詳細を公開しています。 Getting better at Linux with 10 mini-projects - carltheperson https://carltheperson.com/posts/10-things-linux GitHub - carltheperson/10-things-linux: Getting better at Linux with 10 mini-projects. https://github.com/carltheperson/10-thing

                  Linuxの基礎用語を完全理解するためにエンジニアが作成した「10のミニプロジェクト」とは?
                • 新しい curl コマンドの使い方 完全ガイド(2025年版) - Qiita

                  はじめに curl とは対話シェルやシェルスクリプトから HTTP 通信を行うのによく使われるコマンドです。あらゆる環境(100 種類の OS)で動作し、macOS や Windows には標準でインストールされています。商用サポートもあり、互換性は非常に重視され、何年経っても同じ書き方で動きます。非常に長く使われており(1998 年生まれの 27 歳1)、そして古い情報もたくさんあります。この記事ではそういった古い情報を、より簡単で新しい curl コマンドの使い方にアップデートします。最初に結論を書いておくと、 もう -X POST -H "Content-Type: applicatoin/json" なんて書かなくていいですよ。 (記事を読まない人のためのリンク) この記事を書くにあたって以下の記事を参考にしています。この記事が書かれたのは 2015 年、現在はそれから 10 年後

                    新しい curl コマンドの使い方 完全ガイド(2025年版) - Qiita
                  • sudo su とかしてる人はだいたいおっさん

                    sudo su と sudo -s はほぼ同じ。実行されるシェルが異なることがある。 sudo su - と sudo -i もほぼ同じ。環境変数のクリア的な意味だと sudo su - の方が強い。 以下は別に読まなくてもいい。 su 別のユーザーでシェルを実行するコマンド。自分は「す」とか「えすゆー」とかと呼んでる。 元は super user とか switch user とか substitute user の略だったらしい。 デフォルトでは root になるが、引数でユーザー名を指定するとそのユーザーになる。 新ユーザーのデフォルトのシェルとして設定されているシェルが実行される。 入力するパスワードは新ユーザーのパスワード。 ~% su Password: (rootのパスワード) root@hostname:/home/tmtms# id uid=0(root) gid=0(r

                      sudo su とかしてる人はだいたいおっさん
                    • デプロイを任されたので、教わった通りにデプロイしたら障害になった件 ~俺のやらかしを越えてゆけ~

                      Customer Identity Cloud powered by Auth0 を使ったマルチプロダクト構築の実践と総括

                        デプロイを任されたので、教わった通りにデプロイしたら障害になった件 ~俺のやらかしを越えてゆけ~
                      • 【脱sed】いい加減シェルスクリプトで文字列をsedで置換するなんてやめよう - Qiita

                        Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

                          【脱sed】いい加減シェルスクリプトで文字列をsedで置換するなんてやめよう - Qiita
                        • はじめに - Writing an OS in 1,000 Lines

                          本書では、小さなOSをゼロから少しずつ作っていきます。 OSと聞くと腰が引けるかもしれませんが、OS (特にカーネル) の基本機能は案外単純です。巨大なオープンソースソフトウェアとしてよく挙げられるLinuxでさえ、バージョン0.01はたった8413行でした。様々な要求に応えるために次第に肥大化していっただけで、当初は大変素朴な実装になっていました。 本書では素朴なコンテキストスイッチ、ページング、ユーザーモード、コマンドラインシェル、ディスクデバイスドライバ、ファイルの読み書きをC言語で実装します。これだけ様々な機能が詰め込まれているのに、コードは合計でたった1000行未満です。 「1000行なら1日でできそう」と思うかもしれませんが、初学者には少なくとも3日はかかるでしょう。OS自作のハマりポイントは「デバッグ」です。アプリケーション開発とは違うデバッグ手法・能力を習得する必要がありま

                            はじめに - Writing an OS in 1,000 Lines
                          • もっと使いやすいコマンドラインツール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選
                            • シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくる - Qiita

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

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

                                $ wget --random-wait -r -p -e robots=off -U mozilla http://www.example.com

                                  One-liners | Basic | Cheat sheet | Linux Command Library
                                • シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - 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
                                  • お気に入りのコマンドラインツールを淡々と紹介する

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

                                      お気に入りのコマンドラインツールを淡々と紹介する
                                    • ShellScriptで自動化を楽にしたい時に知っておいても良いこと | sreake.com | 株式会社スリーシェイク

                                      はじめに こんにちは、皆さん。今日は、シェルスクリプトを使った高度な自動化のベストプラクティスとパターンについて解説します。これらは、ちょっとした知識で実行でき、作業を大幅に効率化できるTipsです。シェルスクリプトは、特にUNIX系システムでの自動化タスクに欠かせないツールです。適切に使用すれば、複雑なタスクを効率的に、そして信頼性高く実行できます。 トイルとは、反復的でマニュアルな作業のことを指します。これには、例えば、手動でのシステムのスケーリングや、エラーのトラブルシューティング、ルーティンなメンテナンス作業などが含まれます。トイルを特定し、それを自動化することで、エンジニアはより創造的なタスクやプロジェクトに焦点を合わせることができます。 トイルを判別する方法としては、以下のような基準が挙げられます: 手作業であること 完全な手作業だけでなく、「あるタスクを自動化するためのスクリ

                                        ShellScriptで自動化を楽にしたい時に知っておいても良いこと | sreake.com | 株式会社スリーシェイク
                                      • 『マスタリング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
                                        • シェルスクリプトを書くのをやめる - blog.8-p.info

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

                                          • 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で無料公開
                                            • 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 がピンポイントでとても便利
                                              • sudo新一

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

                                                  sudo新一
                                                • WSL2でWeb開発環境の構築メモ (zsh, node, dockerなど)

                                                  はじめに Web開発といえばUNIXターミナルが使えるMacが便利だったが、ついに今年WSL2が正式リリースされた。これでようやくWindowsでまともなWeb開発環境を構築することが可能になって喜びもひとしお。 それどころか、WSL2, Windows Terminal, VS Codeと便利なツールがどんどんリリースされていてMacよりも便利といえる環境になってきたため、本格的にWindowsに乗り換えることにした。 環境構築をメモしていく。 WSL2とUbuntuのインストール 公式ドキュメント通り。 ディストリはUbuntuを選んだ。 Windows Terminal マイクロソフト純正。とても使いやすく、アップデートも精力的で今後も楽しみ。 Microsoft StoreからWindows Terminalをインストール 設定ファイルがJSONなのはエモいですね。 この辺で好きな

                                                    WSL2でWeb開発環境の構築メモ (zsh, node, dockerなど)
                                                  • 長い処理には通知音コマンドを仕込んでおくと捗るぞ

                                                    こんにちは! Magic Moment フロントエンドエンジニアの @morishin です。 この記事は、Magic Moment Advent Calendar 2024 4 日目の記事です。 はじめに 開発あるある 皆さん開発をしていて、コマンドの "待ち" が長いとき、こんな経験はありませんか。 「ビルドに時間がかかるなぁ」 (別の作業をする) 「もう終わったかな (ターミナルチラー」 「まだかー」 (以降無限ループ) 作業に集中できない! 逆に 「このインストール時間かかるなぁ」 「終わるまでちょっと休憩しようかな (スヤァ」 〜3 時間後〜 「...あっ、いつの間にか終わってた!」 処理の完了に気付かずついつい休憩しすぎた! ありませんか?ありますよね? まあ休憩しすぎたっていうのはないにしても、実はエラーで処理が中断していたのに気付かなかった、というのはあるあるな気がします。

                                                      長い処理には通知音コマンドを仕込んでおくと捗るぞ
                                                    • 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
                                                      • いい加減シェルスクリプトで [ $? -eq 0 ] や [ $? -ne 0 ] なんて エラー処理を書くのはやめよう! - Qiita

                                                        はじめに [ $? -eq 0 ] や [ $? -ne 0 ] は冗長でデメリットしかありません。非常に多く見かける書き方ですが、1979 年に Bourne シェルが広く公開された時からこのようなコードは必要ありませんでした。実際に当時はこのような書き方は使われておらず、このような書き方をしなければならなかった歴史的な経緯などはありません。これはなぜか広まってしまった良くない書き方です。 優れたコードとは無駄がないシンプルなコードです。丁寧なコードとは無駄な処理を書くことではありません。[ $? -eq 0 ] や [ $? -ne 0 ] は書かないほうが、簡単で読みやすくわかりやすくなります。優れた文法を持つシェルは短いコードで正しく動作し、良い書き方は最短の時間と最小の手間で目的を達成することができます。コマンドのエラー処理を簡潔に書くことができるのが、シェル言語の優れている点の

                                                          いい加減シェルスクリプトで [ $? -eq 0 ] や [ $? -ne 0 ] なんて エラー処理を書くのはやめよう! - Qiita
                                                        • 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

                                                            Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに そりゃまあ 30 年も経てば古くなりますよ。「入門UNIXシェルプログラミング」は今もシェルスクリプトに関するオススメの本として名前が挙がる名著です。しかしこの本は古い本です。POSIX でシェルが標準化される以前の本で、内容から判断するとおそらく 1990 年ぐらいの常識に基づいて書かれています。 古いから参考にならないと言うつもりはありません。しかしどれだけ優れた本でも時間の流れには勝てません。良書であると思っているからこそ、古くなってしまった内容は訂正する必要があると考えています。なおシェルスクリプトに関する古い本はこれ

                                                              名著「入門UNIXシェルプログラミング」の超詳細なレビューをしてみた(古い内容の訂正) - Qiita
                                                            • ls -l はなぜ事故を起こすのか

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

                                                                ls -l はなぜ事故を起こすのか
                                                              • Lustre ファイルシステムのファイル消失について | 日本ヒューレット・パッカード合同会社

                                                                • findコマンドの使い方を簡単に理解するための7つのルール+実践的な知識 - Qiita

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

                                                                    findコマンドの使い方を簡単に理解するための7つのルール+実践的な知識 - Qiita
                                                                  • 2023年のシェル環境構築

                                                                    tl;dr fig starship zsh fzf sheldon なぜ vscode の .vscode/tasks.json が fishと非常に相性が悪い。とくに fish-nvm を使っていると、fish 経由のパス実行時に node と npm へパスが通らない。 そもそも fish を使っていた理由は autocomplete を快適にするためだったが、1年ぐらい Fig を使っていて、補完はこれを任せていいと気づいた。 Fig はこういうやつ そもそも fish の拡張コマンドを使わないように生活していた。方言を覚えたくない。というか bash 拡張や zsh 拡張もあんまり覚えたくない。

                                                                      2023年のシェル環境構築
                                                                    • 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レスポンスを試験する - ゆーすけべー日記
                                                                      • 【永久保存版】シェルスクリプト完全攻略ガイド - Qiita

                                                                        シェルスクリプトの世界へようこそ! シェルスクリプトって何? シェルスクリプトは普段 Bash などのシェルで実行しているコマンドを並べて、まとめて実行できるようにしたものです。ファイルのバックアップ、ログファイルの解析、システムのセットアップなど、ターミナルで行っていた一連の作業をまとめてシェルスクリプトに記述することで、シェルスクリプトを実行するだけで自動的に一連の作業を終わらせることができるようになります。また、シェルスクリプトはファイルに保存することになるため、再利用するのも簡単になります。 シェルスクリプトで使うコマンドの多くは UNIX コマンドになると思います。そのため、シェルスクリプトを書く際は UNIX コマンドについてある程度の知識があることが前提となってきます。以下の記事などを参考に UNIX コマンドについても学んでおくことをオススメします。 シェルスクリプトはいつ

                                                                          【永久保存版】シェルスクリプト完全攻略ガイド - 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
                                                                          • macOS の zsh ではこれだけはやっておこう

                                                                            /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

                                                                              macOS の zsh ではこれだけはやっておこう
                                                                            • Bash: わかるとほんのちょっとうれしくなること5選 - Qiita

                                                                              Bash の勉強を始めた頃、頭がごちゃごちゃになって調べたこと、わかるとほんのちょっとうれしくなったことを5個ピックアップしてみました。 - 目次 - alias sudo='sudo ' と alias sudo='sudo -E ' bash -c /dev/null grep -rl xargs で任意の位置に引数を展開する - 説明 - 1. alias sudo='sudo ' alias コマンドを使うと、長いコマンドを別名で登録できて、とても便利です。 でもそのまま sudo と組み合わせると、エラーになります。 例えば、la という登録名で、ls -a を実行させると、 sudo la でエラーになります。 bash のマニュアルには、以下のように書かれています。 alias [-p] [name[=value] ...] value の末尾に空白があると、エイリアスが展開

                                                                                Bash: わかるとほんのちょっとうれしくなること5選 - Qiita
                                                                              • systemd serviceから呼ぶシェルではsudoではなくsetprivを使う - 赤帽エンジニアブログ

                                                                                Red Hatの森若です。 自分でsystemdのservice unitを作るときに、起動用のいくつかのコマンドを記述したシェルスクリプトを呼ぶ事は(理想的ではないですが)あるかと思います。 今回はこの場合に、sudoを利用するとまずい理由を説明して、かわりにsetprivを使うほうがよいという話です。 例題用のservice 実行してみる 別のcgroupだと何がまずいのか? 対策はsetprivコマンド 例題用のservice sudoによるまずい動作を確認するためのできるだけ単純な例として、hoge.service を用意します。 /opt/hoge/hoge.sh #!/bin/bash sudo -u moriwaka sleep 5000 /etc/systemd/system/hoge.service [Unit] Description=hoge [Service] Ty

                                                                                  systemd serviceから呼ぶシェルではsudoではなくsetprivを使う - 赤帽エンジニアブログ
                                                                                • bash スクリプトの実行中上書き動作について

                                                                                  を設定してから再度試した所 bar が表示された。backupcopy は編集中のファイルによって自動で判別する auto がデフォルトになっている為、試す際には明示的に yes に設定しないといけない。 bash の実装確認 evalstring.c の parse_and_execute でコマンドが処理されており、input.c の with_input_from_buffered_stream で読み込みの準備が行われている。バッファの読み込みの本体は y.tab.c つまりパーサから直接呼ばれており、このパーサは fgets(3) で読み込まれつつ実行される為、一括でファイルが読み込まれている訳ではない。 while/do でループ実行した際に、ファイルを書き換えられたら戻り先はどうなるか、についてはスクリプトはバッファ付きで読み込まれており、そのバッファがファイルシステムから読

                                                                                    bash スクリプトの実行中上書き動作について

                                                                                  新着記事