シェルスクリプト
環境 mac OS 10.14.6 zsh 5.3 (x86_64-apple-darwin18.0) モチベーション git push や git checkout など、branch 名を タイプしないといけないときに正確に branch 名を入力するのが面倒くさい 結果 B と書かれている箇所にあいまい検索で見つけた branch …
環境 Permission denied 読取権限 環境 GNU bash, バージョン 4.4.23(1)-release (x86_64-apple-darwin18.0.0) Permission denied $ touch hoge.sh && ./hoge.shするとbash: ./hoge.sh: Permission deniedになる 実行権限がない しかし$ touch hoge.sh && ba…
先日弊社恒例の(ほぼ)社内勉強会であるほろよいてっくでシェル芸入門というタイトルの発表をした。こんな発表をしてはいるが自分もシェル芸初心者。 当日の発表資料はこちら。ちなみに資料ではシェル芸勉強会の過去問及び解答を多く引用させて頂いている。…
環境 やりたいこと 比較対象のCSVファイルを整形する ソート 補足 文字コード変換 実際に比較する git diff csvdiff まとめ 環境 GNU bash, バージョン 4.4.23(1)-release (x86_64-apple-darwin18.0.0) macOS 10.14 やりたいこと 2つのCSVファイルの差分比較…
環境 GNU bash, バージョン 4.4.23(1)-release (x86_64-apple-darwin18.0.0) 文字からUTF-8のバイトコードを調べるワンライナー ー(全角ハイフン)を調べたい場合 $ echo -n 'ー' | iconv -f utf-8 | xxd -p e383bc -tを明示しない場合はUTF-8で出力と解釈…
環境 GNU bash, バージョン 4.4.23(1)-release (x86_64-apple-darwin18.0.0) GNU coreutils 8.27 事象 $ printf "%0s" hoge hoge $ printf "%.s" hoge # 何も表示されない 疑問 文字列かつ精度指定は文字数の制限なので0を指定したら何も表示されないのでは …
シェル芸に取り組んでいるとUnicodeコードポイントを操作して文字を表示させることが多いのでまとめ。 環境 macOS Mojave 10.14 GNU bash, バージョン 4.4.23 \uを利用する方法 こんな感じのこと $ echo -e \\u3043 ぃ bashでUnicodeのコードポイントを扱う …
環境 MacOS GNU bash, バージョン 4.4.23(1)-release (x86_64-apple-darwin18.0.0) ターミナル上の作業ログを取りたい場合 scriptコマンドを使うとターミナル上の操作と出力を全てファイルに記録できる $ script Script started, output file is typescript …
【問題と解答】jus共催 第37回シェル芸bot生きてるかどうか分からないけどシェル芸bot向けシェル芸勉強会 | 上田ブログのQ7を読んでいていて、kakasiは入力と出力の文字コードを指定できるのかーと思ったので書いた。 環境 GNU bash 4.4.23 kakasi 2.3.6 nkf…
awkとしっかり向き合いたい時に役に立つかも。 環境 macOS 10.14 VSCode 1.28.2 One Monokai Theme GNU Awk 4.2.1 awk-language-client marketplace.visualstudio.com Language Serverのawk拡張 拡張子.awkのファイルに対してシンタックスハイライト、補完、…
環境 macOS 10.14 bash 4.4.23 moreutils matsuya 混乱 【問題と解答】jus共催 第37回シェル芸bot生きてるかどうか分からないけどシェル芸bot向けシェル芸勉強会 | 上田ブログのQ8の解答を読んでいて混乱した $ matsuya | pee cat "grep -o ." rev んどうー…
シェル芸勉強会の過去問演習を再開したいなぁと思ったので、まずは環境を整えてみる。 環境 VSCode(1.28.2) macOS(10.14) インストールした拡張 Bash Beautify シンタックスハイライト この拡張をインストールするだけで動作する Bash Debug VSCodeデバッグ…