タグ

Programmingとbashに関するkyo_agoのブックマーク (4)

  • MCPサーバーを安全に動かすための工夫

    現在普及しているStdioServerTransport型MCPサーバーの使用方法は設定ファイルにnpxやuvxコマンドを記述する。​これはその場でダウンロードしたスクリプトファイルを実行することを意味する。 https://code.visualstudio.com/docs/copilot/chat/mcp-servers​しかしこの実行方式は開発者には悪名高いソフトウェアのインストール手順「curlしてbash(URLでダウンロードしてきたシェルスクリプトをパイプしてノールック実行)」を思い出させる。「curlしてbash」なら単一の信頼した配布元を基準に判断できるがnpxやuvx方式は依存するライブラリも芋づる式に参照してくる。つまり任意のコードをどこかの経路(MCPサーバー体でなくその内部の別の依存ライブラリかもしれない)を通じて実行される可能性は残る。 curl | bash

    MCPサーバーを安全に動かすための工夫
  • シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)

    Java BlockingQueueで遊ぶ:パイプラインごっこ」でパイプラインの話をしたので、来の、つまりUnixのパイプやリダイレクトを少し調べてみました。 たまに話題となる some-command >file 2>&1 と some-command 2>&1 >fileの挙動の違いについて、「シェルはコマンドラインリダイレクトの指定を右から左に解釈実行する」なんて説明が見つかりました。んなバカな! パージングは左から右にするものですよ。パーズツリーを逆順にたどることはできるけど、そんなことする必然性はなんにもないよ。 次の記事を読むと、「右から左」なんて事情じゃないことが分かるでしょう。 UNIXの部屋 検索: リダイレクト シェルのリダイレクトにまつわる失敗 さてここでは、複雑なリダイレクト処理も完全に理解できる処方箋を示しましょう。例えば、次のコマンドラインが何をするか分かる

    シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • 【学習メモ】LinuxCUI初心者が早く知りたかったコマンド(操作も) - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Linuxを学ぶ上で 先に教えて欲しかったことを書きます。 つまりは、教える機会があれば先に伝えておきたいことです。 便利なキー操作や誤りがあればぜひ教えてください。 また、この記事に対してmorimorihogeさんの分かりやすい補完がありますので、ぜひそちらと合わせてお読みください 流れ 1.キーボード操作編 知ってると便利なショートカット。 2.用語・概念編 知ってるとひらめくかも。 3.コマンド編 知っておくべき重要なコマンド、時短になるコマンド。 キーボード操作編 補完機能 Tab連打。 連打すると勝手にlsしてフォ

    【学習メモ】LinuxCUI初心者が早く知りたかったコマンド(操作も) - Qiita
  • Bashのよくある間違い | Yakst

    原文は2015年8月22日時点のものを利用しており、それ以降に追記、更新されている可能性があります。 翻訳は原作者の許可を得て公開されています。 Thanks for GreyCat! このページはBashプログラマーが陥りがちなよくあるエラーについてまとめました。以下の例は全てなんらかの欠陥があります。 クオートをいつも使い、どんな理由があっても単語分割を使わなければ、多くの落とし穴からあなた自身を守ることができます!単語分割はクオート表現をしない場合にはデフォルトでオンになっている、Bourneシェルから継承された壊れたレガシーな設計ミスです。落とし穴の大半はクオートされていない展開になんらか関連し、単語分割しその結果をグロブします。 1. for i in $(ls *.mp3) BASHプログラマーたちがループを書く際にもっとも犯しがちなよくあるミスは以下のような感じです。: f

    Bashのよくある間違い | Yakst
  • 1