タグ

shellscriptに関するy8ttyanのブックマーク (5)

  • 複数ファイルの改行コードを一括置換しちゃう - Qiita

    gitを使っていてたまに発生する現象。 それは改行コードがCRLFに変換されること。。。 違うOSを使って共同作業をしていてこれが発生しました。 (WindowsMac) .shの改行コードがCRLFになっていると.shが実行できなくなるので、 手っ取り早く改行コードを置換してしまいましょう。 # .shだけLFに置換 find . -name \*.sh -type f | xargs -n 10 nkf -Lu --overwrite # ファイルは全てLFに置換 find . -type f | xargs -n 10 nkf -Lu --overwrite

    複数ファイルの改行コードを一括置換しちゃう - Qiita
  • sedコマンドの備忘録 - Qiita

    . # 任意の一文字 * # 直前の文字が任意の個数続く文字列(0個も含む) <space><space>* # 連続するSPACEを表す <tab> # TAB .* # 任意の文字列 sed -e "s/aaaa/bbbb/" # 置換 行で最初に出てきた'aaaa'を'bbbb'に置換 sed -e "s/aaaa/bbbb/g" # 入力の全行に渡って置換 (Global) sed -e "s/^aaaa/bbbb/" # 行頭(^)に'aaaa'のもの sed -e "s/aaaa\$/bbbb/" # 行末($)に'aaaa'のもの。$は\でescape sed -e "s/~/bbbb/" # 行頭に'bbbb'を追加 sed -e "s/\$/bbbb/" # 行末に'bbbb'を追加 sed -e "s/.*/abcd/" # すべての行を'abcd'に置換 sed -e

    sedコマンドの備忘録 - Qiita
    y8ttyan
    y8ttyan 2016/12/02
    マッチした行からマッチした行を出力するなど
  • bash によるオプション解析 - Qiita

    すこし記事が長いため、簡単なアウトラインを書いておきます。要点だけ掴みたい場合は、最終項の「まとめ」を読むのがいいかもしれません。 コマンドライン引数の一般的な解析手法 それぞれの特徴 〜 getopt と getopts の違い getopts(メリット・デメリット) getopt(メリット・デメリット) 自前で解析しちゃう(唯一のデメリット) まとめ ============================= コマンドライン引数を処理する一般的な手法として、 getopts getopt shift などで自力で解析 といった具合に、上から順に考えつくかと思います。getopt(3) は UNIX において、コマンドの引数を処理する一般的な C 言語のライブラリ関数です。それを用いて実装されたコマンドが getopt(1) です。Bourne シェル系だと内部関数になりますが、同系統の

    bash によるオプション解析 - Qiita
  • bash 超プログラム術

    bash の解説なんて、ネット上には結構あったりするのだが、これをわざわざ公開しようというのは、次の理由による。 某ソフトハウスでのUNIX講座用に書いてしまったから。 ネット上にある bash 解説だと、表面的な構文解説程度であり、きっちりスクリプト言語として使い倒すレベルの解説はあまりない。まあ、プログラミング言語として凝ったサンプルもやってみようじゃないの、というノリで割とディープに解説する。 アクセスを増やすための人気取り(苦笑)。 まあ、そんな不純な目的による bash 解説である。とはいえ、日常的に使い慣れている bash であっても、「え、こんな使い方があったの!?」という発見もあることであろう。苦笑しながらでも読んでくれたまえ。だから、初歩的なリダイレクションなんかは解説しないからそのつもりで。 ちなみに参考書としたのはオライリー・ジャパン刊「入門 bash 第2版」である

  • シェルスクリプトを書くときに気をつける9箇条 - Qiita

    最新の類似投稿としてシェルスクリプトのコーディングルール2014も併せてどうぞ。 2014/10/09追記 ぼくがシェルスクリプトを書くときに気にしていること、過去の失敗で書き留めたことを忘れないために。 1. グローバル変数は大文字 PATH や HOME など、環境変数が大文字なので、エクスポートする変数を大文字で書くという習慣は一般的であるような気がしますが、エクスポートする変数を抱えるシェルスクリプトを作成する機会が稀なので。 グローバル変数は大文字 ローカル変数は小文字 エクスポートする変数も大文字 関数内からグローバル変数にアクセスする場合がありますが、やはり区別していると、可読性が増すような気がするのでお勧めです。 2. awk を知る Unix 上にて文書処理をするときに、数多くのフィルタコマンド(grep、cut、tr、head、sort、uniq、sed、awk、wc、

    シェルスクリプトを書くときに気をつける9箇条 - Qiita
    y8ttyan
    y8ttyan 2014/12/16
    “シェルスクリプトの冒頭に、 # @(#) This script is ~. といった記述がありますが、これは what コマンドで使用するためです。”
  • 1