並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 1077件

新着順 人気順

terminalの検索結果41 - 80 件 / 1077件

  • 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で無料公開
    • colorsなどのnpmパッケージに悪意あるコードが含まれている問題について

      追記: 2022年1月11日 2:29 JSTにDoS脆弱性としてセキュリティアドバイザーが出されて、悪意あるバージョン(1.4.1や1.4.2)はnpmからunpublishされ、npmの最新は安全なバージョンである1.4.0へと変更されました。 Infinite loop causing Denial of Service in colors · GHSA-5rqg-jm4f-cqx7 · GitHub Advisory Database 2022-01-08 に colors というnpmパッケージにDoS攻撃のコードが含まれたバージョンが1.4.44-liberty-2として公開されました。 GitHub: https://github.com/Marak/colors.js npm: https://www.npmjs.com/package/colors 問題についてのIssu

        colorsなどのnpmパッケージに悪意あるコードが含まれている問題について
      • 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 がピンポイントでとても便利
        • ngrokよりserveoがすごい。0秒で localhostを固定URLで公開 - Qiita

          注意 serveoがサービス停止中です。 みんな大好きcloud functionには欠点があります。 それは、実際にコードをデプロイしないと、httpsで公開できないこと。 そのため、slackのコマンドを作ったり、ラズベリーパイとかを開発するのに不便だったりします。 以前私はngrokというcliアプリを使っていました。 とても使いやすく、ユーザー登録+ngrokのインストール+セットアップだけで使い始めることができます。 お金を払えば固定URLもゲットできます。 しかし、今回もっと良いものを見つけたので紹介します。 serveoです。 なんとこのserveoインストールもセットアップも不要です。 ターミナルで、以下のように ssh -R 80:localhost:3000 serveo.net と打つだけで自分のPCのlocalhost:3000を、固定URLでhttpsとして公開し

            ngrokよりserveoがすごい。0秒で localhostを固定URLで公開 - Qiita
          • 入門 シェル実装

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

              入門 シェル実装
            • 現代のモバイルゲーム開発者が向き合うべき ディスプレイ事情と、その対応方法

              はじめに 現代では多くの人々がスマートフォンやタブレットを所持し、ゲームを楽しんでいることと思います。 モバイル向けのゲーム市場は大きく、世界では今も多くの開発者たちが iOS / Android 向けの商用ゲームを作っています。 さて、モバイルゲームの開発には、多くの開発者を悩ませるちょっと困った事情があります。 それは ディスプレイが非常に多くの多様性を持っている ことです。 正方形に近い形のタブレットもあれば細長い端末もあり、カメラがディスプレイの中に割り込んでいたり、 OS が専有する領域があったりと様々です。物理的な大きさもバラバラですね。 そのくせモバイル端末はタッチパネルで、ディスプレイに触れる UI になっているのです。 ゲーム開発を生業とする多くのエンジニア / アーティスト / ゲームデザイナーは、 これまでに何度も頭を抱えてきたことでしょう。 本稿では、2019 年現

                現代のモバイルゲーム開発者が向き合うべき ディスプレイ事情と、その対応方法
              • 『なるほどUnixプロセス』を読む前にちょっとだけナルホドとなる記事

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

                • Google、VSCodeの代替を狙う「Eclipse Theia」コードエディタをクラウド統合開発環境として採用。Google Cloud Shellに統合を発表

                  Google、VSCodeの代替を狙う「Eclipse Theia」コードエディタをクラウド統合開発環境として採用。Google Cloud Shellに統合を発表 Googleは、Google Cloudをコマンドラインで操作できる「Cloud Shell」の機能の新機能として、プログラミングのためのコードエディタ「Cloud Shell Editor」を統合すると発表しました。 Cloud Shell EditorはWebブラウザ上で動作するコードエディタです。Go、Java、.NET、Python、Node.jsなどのプログラミングに対応。 すでにプレビュー版として利用可能。下記は実際に起動した画面です。 見てわかる通り、まるでVisual Studio Codeの画面そっくりです。 これはCloud Shell Editorに採用されたコードエディタ「Eclipse Theia」が

                    Google、VSCodeの代替を狙う「Eclipse Theia」コードエディタをクラウド統合開発環境として採用。Google Cloud Shellに統合を発表
                  • 【Ubuntu日和】 【第36回】SSH使うなら、これだけは覚えておきたい話

                      【Ubuntu日和】 【第36回】SSH使うなら、これだけは覚えておきたい話
                    • 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」とは?
                      • 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
                          • バージョン管理ツールのGitでよく使用するコマンドを1ページにまとめた便利なチートシート -GitSheet

                            GitSheet Gitでよく使用するコマンドをまとめたチートシートは、こちら。 サイトでは「Copy」ボタンをクリックすると、コマンドがコピーできます。 GitSheet チートシートの作成者に許諾を頂いたので、各説明を意訳しました。 Gitのブランチ操作 git branch すべてのローカルブランチを一覧表示します。 git branch -a リモートおよびローカルブランチを一覧表示します。 git checkout -b branch_name ローカルブランチを作成し、切り替えます。 git checkout branch_name 既存のブランチに切り替えます。 git push origin branch_name ブランチをリモートにプッシュします。 git branch -m new_name 現在のブランチの名前を変更します。 git branch -d branch

                              バージョン管理ツールのGitでよく使用するコマンドを1ページにまとめた便利なチートシート -GitSheet
                            • Wave Terminal

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

                                Wave Terminal
                              • 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
                                  • 最近気に入っているOSSを淡々と紹介する

                                    はじめに こんにちは〜!皆様いかがお過ごしでしょうか? no plan inc. CTOの @serinuntius です。 これはno plan inc.の Advent Calendar 2023の22日目の記事です。 最近気に入っているOSSとかを作者様に感謝しながら、スターを送りながら、こんなのを使用してるぜって紹介する記事です。 「OSSは使っていることを公言するだけでも貢献になる」とsongmuさんが言っていたので、私も貢献したいと思います。 紹介する順番に特に意味はありません。 rtx 個人的お気に入り度: ★★★★★ スター数: 3700 Rustで作られている💯 LICENSE: MIT 初っ端は、rtxです。あらゆるプログラミング言語環境(Runtime)のマネージャーです。 公式のデモ画像を見ていただくのが一番早いと思います。 私はこれを使う前はanyenvというも

                                      最近気に入っているOSSを淡々と紹介する
                                    • ls -l はなぜ事故を起こすのか

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

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

                                        • WindowsのコマンドでLAN内のデバイスを探す (1/2)

                                          自宅のネットワークなどで、接続しているPCを全部見つけたいことがある。エクスプローラーのネットワークから見つけることもできるが、スクリプトなどで処理したい場合に手入力するのは面倒だ。そんなときには、PowerShellのGet-NetNeighborコマンドが利用できる。 PowerShellのGet-NetNeighborコマンドは、ネットワーク内の通信により得たIPアドレスを出力できる。ただし、大量の出力があるので、不要なものを排除する必要がある Get-NetNeighborでアクセス可能なIPアドレスを探す LAN内のネットワークノードを探すのは面倒な処理だ。たとえば、クラスCのプライベートネットワークならノード数は多くても254個なので、すべてのアドレスに対して、Pingコマンドを実行して応答の有無でノードの存在を確認することも不可能ではない。しかし、実際にスクリプトを書くとなる

                                            WindowsのコマンドでLAN内のデバイスを探す (1/2)
                                          • チャットAI「ChatGPT」内部に仮想マシンを作成する試み、内部には仮想インターネットが存在しChatGPTが創造した世界にもChatGPTが存在

                                            大学生レベルの自由記述問題を解いたり、プログラムのコードを書いたりすることもできると話題の対話AI「ChatGPT」の内側に仮想マシンを作ることができると、AI企業・DeepMindのジョナス・デグレイブ氏が報告しています。 Building A Virtual Machine inside ChatGPT https://www.engraved.blog/building-a-virtual-machine-inside/ デグレイブ氏は、このことを同僚のフレデリック・ベッセ氏から教えてもらったとのこと。ChatGPTに対して伝えたのは「(ChatGPTを)Linuxターミナルとして動作させたいです。コマンドを打つので、ターミナルが示すべきものを返信してください。ユニークなコードブロック内のターミナルの出力だけ返信して欲しいです。説明は書かないでください。英語で何か伝える必要があるとき

                                              チャットAI「ChatGPT」内部に仮想マシンを作成する試み、内部には仮想インターネットが存在しChatGPTが創造した世界にもChatGPTが存在
                                            • 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
                                                • 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年のシェル環境構築
                                                  • 【卍】ギャルのための開発環境カスタム

                                                    概要 やっぱギャルなら開発環境は可愛くなきゃだめっしょ? ってことで開発環境の見た目をめっかわにするカスタム方法をゆるめにまとめます🦄よろ〜 ※機能性、利便性より可愛さを重視してご紹介します。 ※本記事における「ギャル」の感覚は筆者の独自解釈に依るものですが、筆者の本記事における方針といたしましては「心がギャルならみんなギャル」です。ご了承いただける方のみお読みください。 対象OS: Mac コードエディター: VSCode 1. ターミナル まずはターミナルからやってくけど大丈夫そ?❤️‍🔥 ターミナルはMacデフォルトのでももちろんOKですが、おすすめはHyperです。 理由は可愛いからです。 公式サイトからでも、homebrewでもインストールできます。

                                                      【卍】ギャルのための開発環境カスタム
                                                    • 排他制御の基礎の基礎

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

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

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

                                                        • 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
                                                          • 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
                                                            • macOS の zsh ではこれだけはやっておこう

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

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

                                                                弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方は、こちらまで。 シェルスクリプトの世界へようこそ! シェルスクリプトって何? シェルスクリプトは普段 Bash などのシェルで実行しているコマンドを並べて、まとめて実行できるようにしたものです。ファイルのバックアップ、ログファイルの解析、システムのセットアップなど、ターミナルで行っていた一連の作業をまとめてシェルスクリプトに記述することで、シェルスクリプトを実行するだけで自動的に一連の作業を終わらせることができるようになります。また、シェルスクリプトはファイルに保存することになるため、再利用するのも簡単になります。 シェルスクリプトで使うコマンドの多くは UNIX コマンドになると思います

                                                                  【永久保存版】シェルスクリプト完全攻略ガイド - Qiita
                                                                • bash の危険な算術式 - どさにっき

                                                                  ■ bash の危険な算術式 _ 使ってる人がいちばん多いだろうからタイトルでは bash としてるけど、ここで取り上げることは zsh および ksh 一族(本家 ksh、pdksh、mksh)にも該当する。ash、dash などでは該当しない。 _ 以下のシェルスクリプトには脆弱性がある。わかるだろうか。 #!/bin/bash # "品目,単価,個数" の形式の CSV を読んで、"品目,合計金額" の形式で出力する csv="foo.csv" while IFS=, read item price num; do echo "$item,$((price*num))" done < "$csv" これ、細工された CSV ファイルを食わせることで、任意コードの実行ができてしまう。数ある脆弱性の中でもとくにヤバいやつだ。どこが穴なのかというと、タイトルにもあるとおり算術式なのだが、し

                                                                  • 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 スクリプトの実行中上書き動作について
                                                                    • 混沌を極めるWindowsのssh-agent事情 - Qiita

                                                                      どうしてこうなった。 何の話? WindowsでのSSH-AGENTとSSHの話です。 この記事での用語: SSHとssh, SSH-AGENTとssh-agent この記事では、SSH-AGENTと書いたときにはカテゴリとしてのSSHエージェントを意味します。 ssh-agentと書いたときには、実行プログラムとしてのssh-agentコマンドを意味します。 同様に、SSHと書いたときにはカテゴリとしてのSSHクライアントを意味します。 sshと書いたときには、実行プログラムとしてのsshコマンドを意味します。 SSH-AGENTって? SSH-AGENTは、秘密鍵での署名を代行1してくれるツールです。 SSH-AGENT に秘密鍵をロードしてしまえば、あとはパスワード(パスフレーズ)入力なしでSSH認証できる agent forward機能を使うことで、SSHした先でさらにSSHすると

                                                                        混沌を極めるWindowsのssh-agent事情 - Qiita
                                                                      • 名著「UNIXという考え方 - UNIX哲学」は本当に名著なのか? 〜 著者のガンカーズは何者なのかとことん調べてみた - Qiita

                                                                        補足 1975: トンプソンはベル研を一時休職し、母校のカリフォルニア大学バークレー校に Version 6 Unix をインストールする作業を手伝う。これは後に BSD Unix として配布される。 1984-1998: ガンカーズが DEC でプリンシパル・ソフトウェア・エンジニアを務めた時期 ガンカーズは DEC の Unix Engineering Group (UEG) に所属 いつから DEC に勤めていたのかは不明 P63 より「小さな会社で Version 7 Unix を使っていた」ので 1979 年よりも後 V7M の開発には関わってなさそう おそらく 1980-1984 の間に DEC に入社したと思われる ガンカーズが「UNIX の考え方」についての本はないだろうか?と考えたのは 1991 年 1988: POSIX.1 標準化(POSIX.2 は 1992 年)

                                                                          名著「UNIXという考え方 - UNIX哲学」は本当に名著なのか? 〜 著者のガンカーズは何者なのかとことん調べてみた - Qiita
                                                                        • sudoの脆弱性情報(Important: CVE-2021-3156 : Baron Samedit) - SIOS SECURITY BLOG

                                                                          OSSに関するセキュリティ・ツールの使い方・脆弱性等を紹介しています。 SELinux/Capability/AntiVirus/SCAP/SIEM/Threat Intelligence等。 OSS脆弱性ブログ01/27/2021にsudoの脆弱性情報(Important: CVE-2021-3156 : Baron Samedit)が公開されています。どのローカルユーザでもパスワード認証を経ずに特権昇格が出来るため、一度ローカルユーザのターミナルを開くことが出来れば権限昇格できてしまうという強烈なものです。今回はこちらの脆弱性の概要と、各ディストリビューションの対応について簡単にまとめてみます。 【01/27/2021 10:30更新】Amazon Linuxのリンク(ALSA-2021-1478)も加えました。また、詳細情報を追記しました。 【01/27/2021 14:30更新】O

                                                                            sudoの脆弱性情報(Important: CVE-2021-3156 : Baron Samedit) - SIOS SECURITY BLOG
                                                                          • Goで社内ツールを作るならこんなふうに

                                                                            バックグラウンド 最近企業でにわかにGoの採用が増えているようですね。この流れを受けて実際にうちでも採用してみようと考えている方も多いかもしれません。しかし、Goに限った話ではないのですが、いきなり大きなプロジェクトに未経験の技術を投入するのはリスクが伴います。ですから最初は技術検証とGoの教育を兼ねて、小さな社内ツールなどから導入するのがよいでしょう。幸い、Goは非常に習得が容易な言語ですから、既に他言語の経験があるプログラマーがじゅうぶんに開発できるようになるまでには、数日と掛からないことがほとんどです。 この記事は、そんな小さなツールの導入フェーズにあたって、自らの経験から少し役に立つかもしれない情報をシェアします。 リポジトリの構成 自らの経験上、初めてGoを触れるときによく出る質問の一つは「リポジトリ構成はどうすればいいのか?」です。 結論から申し上げると、 テンプレもルールもな

                                                                              Goで社内ツールを作るならこんなふうに
                                                                            • MacのTerminalでsudo実行時にタッチIDを使用する方法 | DevelopersIO

                                                                              こんにちは、CX事業本部の夏目です。 MacのタッチバーのタッチIDが非常に便利なのですが、Terminalでsudoを叩かないと行けないときに使えたらなぁと思ったので、情報を共有します。 使う方法 /etc/pam.d/sudoにauth sufficient pam_tid.soを追加します。 書き込みには管理者権限が必要になるので次のようにして編集します。 # 自分の環境では最初管理者でも書き込みができないようになってたので、できるようにする $ sudo chmod +w /etc/pam.d/sudo $ sudo vi /etc/pam.d/sudo もともとはこんな感じになっていると思うので、 # sudo: auth account password session auth sufficient pam_smartcard.so auth required pam_ope

                                                                                MacのTerminalでsudo実行時にタッチIDを使用する方法 | DevelopersIO
                                                                              • ターミナル用 UTF-8 テキストエディタを Rust でスクラッチからつくった - はやくプログラムになりたい

                                                                                言語処理系やテキストエディタなどのプログラミングツールが好きなので,その周辺を趣味で触ってます.Vim を Wasm にポートするために Vim の実装を読んだりはしているのですが,フルスクラッチでテキストエディタをつくったことはありませんでした. 今年のお盆はめちゃ暑かったので,引きこもって夏休みの自由工作的に Rust でテキストエディタをつくっていたという話です.普段ターミナルで作業しているので,つくるのもターミナル向けテキストエディタです.最近 vim.wasm で C と TypeScript ばかりだったので,そろそろまた Rust か Go を書きたかったのですが,Go はすでに micro という良さそうなテキストエディタ実装があったので,Rust で書いてみることにしました. まずは Build Your Own Text Editor というガイドを利用して,1000行

                                                                                  ターミナル用 UTF-8 テキストエディタを Rust でスクラッチからつくった - はやくプログラムになりたい
                                                                                • https://twitter.com/matsuu/status/1586362867506327552

                                                                                    https://twitter.com/matsuu/status/1586362867506327552