タグ

shellに関するastk_fのブックマーク (31)

  • GoogleのShell Style Guideの邦訳 - Qiita

    背景 (Background) どのシェルを使うか (Which Shell to Use) Bash は実行が許可された唯一のシェルスクリプト言語である。 実行可能ファイルは #!/bin/bash と最小限のフラグで始めなければならない。シェルオプションの設定に set を利用することで、 スクリプトを bash script_name として呼び出してもその機能を損なわないようにせよ。 全ての実行可能シェルスクリプトを bash に制限することで、全てのマシンにインストールされた一貫したシェル言語を得る。 これに対する唯一の例外は、コーディング対象によって強制される場合である。この1つの例として、Solaris SVR4 パッケージは、どんなスクリプトにも plain Bourne shell であることを要求する。 いつシェルを使うか (When to use Shell) シェル

    GoogleのShell Style Guideの邦訳 - Qiita
  • jqコマンドとシェルスクリプトの上手い速い使い方

    はじめに シェルスクリプトから jq コマンドを使う記事はいくつも見かけますが、あまりにも面倒でよくない書き方ばかりが見つかるのでベストプラクティスをまとめました。 この記事は「詳細解説 jqコマンドとシェルスクリプトの簡単で正しい使い方 〜 データの流れを制するUNIX哲学流シェルプログラミング」の要約版です。詳しい解説やもう少し高度な使い方を知りたい方、シェルスクリプトの考え方についてはリンク先を参照してください。リンク先は長すぎたので、こちらはとりあえず使いたい人用に簡潔にまとめました。(あと、いつも qiita を使っているので zenn を使ってみたかった) 👎 ダメな書き方 よく見かける書き方ですが、コードの見通しが悪く、メンテナンス性が低く、パフォーマンスが(かなり)悪く、特定の場合に不具合が発生する書き方です。 for item in $(jq -c '.items[]'

    jqコマンドとシェルスクリプトの上手い速い使い方
  • bashで忘れがちな機能とかいろいろの備忘録 - Qiita

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

    bashで忘れがちな機能とかいろいろの備忘録 - Qiita
  • シェルスクリプトの入門書 「新しいシェルプログラミングの教科書」を執筆した - mollifier delta blog

    「新しいシェルプログラミングの教科書」というシェルスクリプトの入門書を執筆しました。 2017年11月21日発売です。 新しいシェルプログラミングの教科書 作者: 三宅英明出版社/メーカー: SBクリエイティブ発売日: 2017/11/21メディア: 単行この商品を含むブログを見る 目次 シェルってなんだろう シェルスクリプトとは何か シェルスクリプトの基 変数 クォーティング 制御構造 リダイレクトとパイプ 関数 組み込みコマンド 正規表現と文字列 シェルスクリプトの実行方法 シェルスクリプトのサンプルで学ぼう シェルスクリプトの実用例 テストとデバッグ 読みやすいシェルスクリプト 内容 bashのシェルスクリプトを書く方法について解説したです。 変数、制御構造(if文など)、関数などbashの基的な文法から始まって、実際に役に立つシェルスクリプトを作成して、そのテストとデバッグ

    シェルスクリプトの入門書 「新しいシェルプログラミングの教科書」を執筆した - mollifier delta blog
  • 「ふつうのLinuxプログラミング」でLinuxの基本概念やシェルの仕組みについて学んだ - $shibayu36->blog;

    最近golangでCLIツールを作っていたのだけど、Linuxのお作法とかいまいち分かっていなかった。そこでそのあたりのことが学べそうな「ふつうのLinuxプログラミング」を読んだ。 ふつうのLinuxプログラミング 第2版 Linuxの仕組みから学べるgccプログラミングの王道 作者:青木 峰郎SBクリエイティブAmazon このLinuxにおいてC言語でプログラミングする方法を、Linuxでの重要な概念も含めて教えてくれる。このを読めばとりあえずC言語を使ってLinux用のプログラムを書き始めることが出来るようになりそうだった。 それでC言語を使わない場合でも役に立つの?ということだけど、非常に役立ちそうで面白かった。なぜなら、単なるプログラミングの方法を教えてくれるだけではなくて、 Linuxの重要な考え方をファイルシステム・プロセス・ストリームという概念にまとめて教えてくれ

    「ふつうのLinuxプログラミング」でLinuxの基本概念やシェルの仕組みについて学んだ - $shibayu36->blog;
  • シェル芸初心者によるシェル芸入門

    2. $ whoami • @icchyr • 某濃厚な大学のB3 • Activity • CTF (tuat_mcc, TokyoWesterns) • ICPC (nocow) など

    シェル芸初心者によるシェル芸入門
  • explainshell.com - match command-line arguments to their help text

    write down a command-line to see the help text that matches each argument

  • Windows上のBashシェル入門【Windows 10 Creators Update対応】

    このサイトについて お問い合わせ 利用規約/プライバシーポリシー 姉妹サイト「Deep Insider」 SNSサービス & RSSフィード Facebookページ Twitterページ feedlyページ RSSフィード サイトからのお知らせ ビューの切り替え PCビュー SmartPhoneビュー © Digital Advantage 2013 - 2024

  • #/usr/binとその同種の周辺を探る | POSTD

    (注:2017/04/10、いただいたフィードバックを元に翻訳を修正いたしました。) はじめに 私はLinuxが大好きです。コンピュータとのやりとりが楽しくなるし学ぶことも多くなります。OSとハードウェアの基盤となる基原則を学びたい人にとって、Linuxはとてもいい出発点と言えるでしょう。 ご存じのとおりLinuxとは大抵の場合プログラム(コマンド)を通してやりとりします。Linuxと他のUNIX系システムが持っている特徴は、コマンドラインと、パイプのコンセプトです。プログラムの提供する入力と出力を統合すれば、データを操作するのに非常にパワフルなプラットフォームになります。 Linuxのコマンド、プログラム、バイナリ(何と呼んでもいいのですが)の大部分は、/usr/bin、/usr/sbin/、/binそして/usr/local/binに存在しています。これらのディレクトリを見れば、プロ

    #/usr/binとその同種の周辺を探る | POSTD
  • .zshrcを4年ぶりにメンテナンス。モダンなzsh環境にしてみた。

    概要 4年ほどメンテナンスしていなかった.zshrcをメンテナンスします。 1ヶ月前ぐらい、zshのplugin管理のためにantigenを入れたら、zshの起動に4秒くらいかかるようになってストレスフルだった。 しかし、便利なので我慢していた。重いのは初回起動時だけだし。。。 やっと重い腰を上げて調査と整理 見た目も色々変える。 見た目Before 見た目After やったこと zshのplugin管理にzplugを使うようにした かなり速い!すばらしい!オプションも多数!最高です。 iTerms2のカラースキーマを変更 https://github.com/altercation/solarized/blob/master/iterm2-colors-solarized/Solarized%20Dark.itermcolors 設定をダウンロードして、iTerm2にimport 設定後

    .zshrcを4年ぶりにメンテナンス。モダンなzsh環境にしてみた。
  • シェルスクリプトの罠を避ける三つの tips

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? シェルスクリプトは、Unix 系環境で仕事をするエンジニアなら誰もが一度は書くであろうにもかかわらず、書き方や特性を熟知している人が少ない言語です。この記事は、シェルスクリプトを書くときに罠を踏まないようにするために最低限あなたが気を付けるべき tips 集です。「たかがシェルスクリプト」とは思わないでください。生半可に書かれたシェルスクリプトはあなたの (チームの) 生産性をかえって低下させます。 Shebang に bash を明示しろ Bash でしか使えない機能のことを俗に Bashism と言います。Bashism はもちろん

    シェルスクリプトの罠を避ける三つの tips
  • bashの初見殺しっぷりがハンパない件 - Qiita

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

    bashの初見殺しっぷりがハンパない件 - Qiita
  • シェルスクリプトの書き方

    12月にTwitterに流れていたPOSIX何とかという話題を読んでいたらこの記事にたどり着いた。もう3年以上前の記事だけれど、内容がとても偏っていると思う。 シェルスクリプトの書き方について解説しているウェブ上の資料は少なく、当該記事も検索に引っかかりやすい。最近の初学者はまず検索して調べることが多いが、反論が検索に引っかからないとそれが正しいと受け入れてしまう可能性が高いように思う。きちんと反論している日語の記事が引っかからないので、あえて問題と思う点をまとめてみた。 そんなこと書いているあなたは誰? わたしはシェルスクリプトの専門家でも職業プログラマでもないけれど、シェルスクリプトを書いた量はそれなりにあると思う。環境はSunOS4, Solaris, HP-UX, IBM AIX, FreeBSD, OpenBSD, Linuxを経験していて、移植性や性能の問題がどこで発生しやす

  • Googleの肩に乗ってShellコーディングしちゃおう - Qiita

    はじめに GoogleさんがShellスタイルガイドを共有していたので、いくつか気になった点をピックアップしました。 自分のShellスタイルはかなり我流なので、自省の意味も込めてコメントも併記します。 Googleスタイルガイドの元ネタ (Python/C++/Java/Rとかだけでなくdocumentガイドなど色々あります) https://github.com/google/styleguide Shellスタイルガイド (今回はこちら) http://google.github.io/styleguide/shell.xml 当は人間がチェックするのではなくcpplintのためXML定義なのかもですが、気にしない気にしない。 (見たところcpplintc++だけだと思ってます) commitフックでshell系のlint走らせろっていうのが今風なのかもしれませんが、キニシナイキ

    Googleの肩に乗ってShellコーディングしちゃおう - Qiita
    astk_f
    astk_f 2017/01/09
  • プログラマーの君! 騙されるな! シェルスクリプトはそう書いちゃ駄目だ!! という話 - Qiita

    記事が切っ掛けとなってお声がけを頂き、記事の増補リファイン版となる記事をSoftwareDesign 2018年1月号のシェルスクリプト特集第2章として執筆しました。リファイン版には、この記事で触れていない文法面での分かりにくさについての解説が含まれています。その文法面での分かりにくさの解説の一部に相当する記事もありますので、ぜひそちらも併せてご覧下さい。 Shell Script Advent Calendarをご覧の皆様、図々しくも5日目に続く2度目のエントリーのPiroです。 前回は自作のBashスクリプト製Twitterクライアントをネタに実装を解説しましたが、今日は他の言語で多少のプログラミング経験はあるんだけど、どうにもシェルスクリプトは苦手だ……という人のための、シェルスクリプトによるプログラミングの勘所を解説してみようと思います。多分、プログラミング入門レベルの人や上級

    プログラマーの君! 騙されるな! シェルスクリプトはそう書いちゃ駄目だ!! という話 - Qiita
  • initial-setup-script-for-centos.html

    CentOSでサーバを立てたときに、まず最初に必ずやっておきたい初期設定がある。 その作業の一覧が以下のとおり。 パッケージを最新化する 新規ユーザを作成する suコマンドを制限する suコマンドを実行可能なユーザ・グループを限定する 特定のグループ以外suコマンドでrootに昇格できないように制限する パスワード入力なしでsudoコマンドを利用できるようにする ssh接続を制限する rootユーザのsshログインを禁止する sshで公開鍵認証のみ接続を許可する sshでパスワード認証を禁止する 公開鍵をサーバに登録する sshdサービスを再起動する iptablesまたはfirewalldの設定 ←今回はやらない Webアプリケーションをつくりたくて、WebサーバとAPサーバを用意しようと思ったが、毎回この初期設定をするのが超絶メンドそう...。 ということで、自動化するために初期設定を

    initial-setup-script-for-centos.html
  • "shove" というシェルスクリプト用のテストツールを作った - weblog of key_amb

    CONTENTS: "shove" とは Motivation こんなツールにしたい 使い方について 中で何をやっているのか おわりに "shove" とは こちらです。 github.com 動作イメージとしては README.md にも貼っているスクリーンショットがわかりやすいと思うので、こちらにも貼ります。 成功時: 失敗時: 上のようにテストスクリプトを引数に与えて shove コマンドを実行すると、テストを実行して結果を出力してくれます。 Perl Monger のみなさんは「proveっぽい」と思っていただけたでしょうか。 そうです。名前の "shove" は "shell" + "prove" を縮めたものです。 bash だけでなく、ksh, dash, zsh など POSIX を満たしているシェルに対応できるように作りました。 $SHELL 変数の値と異なるシェルでテス

    "shove" というシェルスクリプト用のテストツールを作った - weblog of key_amb
  • Bashのよくある間違い | Yakst

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

    Bashのよくある間違い | Yakst
  • ターミナルのディレクトリ移動を高速化する - Qiita

    tl;dr よく使われるコマンドの一つに cd コマンドがあります。ターミナル生活の 80% 近くは cd と ls である、という英文記事を何処かで見かけました。それを効率化しようという Tips です。 目的 cd はよく使われるのに使い勝手が悪いコマンドである気がしてなりません。cd コマンドは有効なパス(相対パス、絶対パスは問わず)しか解釈してくれないからです。つまり、存在していて尚且つパスが解決できるものに限るのです。例えば、ホームディレクトリにいるときに、/home/lisa/work/dir に行こうとして cd dir とだけタイプしても no such file or directory (そんなディレクトリは見当たらないよ!)と言われてしまいます。きちんとした経路でなければならないのです。いちいちパスを覚えていない場合や、部分的にしか思い出せない場合には結構面倒ですよね

    ターミナルのディレクトリ移動を高速化する - Qiita
  • シェルスクリプトの文法チェックを全自動で行う「ShellCheck」が参考になる!

    シェルスクリプトの勉強を始めたばかりの人にもオススメできるツール「ShellCheck」のご紹介! シェルスクリプトの「文法チェック」には、いくつか方法があるわけですが、なかでも「ShellCheck」は非常に簡単に扱えるだけでなく、エラー箇所を具体的に指摘してくれるので助かります。 使い方!最もオススメな使い方が、公式サイト上でそのままチェックする方法! シェルスクリプトをブラウザ上で入力することができ、何もしなくても自動的にデバッグされて下段に結果を表示してくれます。 例えば、よくありがちな変数の「$」を付け忘れた場合…。(echoで、変数yの$を付け忘れてますね…)