シェルスクリプト
前回の記事(http://kunst1080.hatenablog.com/entry/2014/03/01/074329)の、アーチャー版。元ネタはこのへんとかこのへんとか。
※元ネタはTYPE-MOONの「Fate/stay night」です。※3/2 内容の微修正に伴いバージョン管理したかったのでgistに移行しました
※これは個人的な疑問のメモです。解答はありません。 コマンドをパイプでつないでcdした時の挙動が、bashとzshで異なる jot -b a 3 | while read L; do cd $L; done bashのばあい 特にカレントディレクトリは変更されません。 zshのばあい a/a/aディレクトリ…
本日のシェル芸勉強会(http://usptomo.doorkeeper.jp/events/8339)の中でプチ話題になったjotコマンド。 イマイチ使い方をちゃんと把握していなかったので調べてみました。※確認・検証はFreeBSD 8.3にておこなっておりまする。 当時の認識jot 回数 開始 終端…
\ls /bin/ /usr/bin/ /usr/local/bin/ |awk 'length==5||length==7{print length, $0}' |sort 最後にsortしない場合はもっと簡単で \ls /bin/ /usr/bin/ /usr/local/bin/ |awk 'length==5||length==7' ※man awkに以下のような記述があり、awkのlengthには$0…
概要 なんとなく作り始めてみました。 セキュリティホールがいっぱいあると思われるので、ローカルホストの外に出しちゃダメね。GItHubのリポジトリはこちら → https://github.com/kunst1080/shwaf/ ざっくりとした仕様など 動作確認はFreeBSD 8.3でのみ実施…
経緯 リア充の爆発を願うより楽しい事は沢山あるよ……ワンライナーとかさ! というわけで、イブの夜はクリスマスにちなんだワンライナーを勉強がてら書こう。 ハッシュタグは #クリスマスワンライナーで。 帰ったらやる! #シェル芸— くんすと (@kunst1080) 2…
元々手作業(http://kunst1080.hatenablog.com/entry/2013/10/21/235038)で ezjail-admin とかファイルコピーやら書き換えやらやっていたのですが、やってらんねー的な感じだったのでシェルスクリプト化してみました。自分用なので汎用性はあまり無いのですが…
ワンライナーやる時かシェル芸でしか使わないような気もしますが。 例えば、今回のシェル芸勉強会(第7回・ゆるふわ)の問題7の模範解答①を少し書き換えて、cpコマンドをechoするように書くと $ find . -type file | sed 's;./;;' | while read f; do echo…
はじめに DOS-BATファイルから別のDOS-BATファイルを起動するには、色々な方法があります。 hoge.bat start "" hoge.bat call hoge.bat これらの起動方法が、UNIXに於ける何と対応するのか、ということを簡単にまとめます。 解説 ①hoge.bat hoge.bat これは…
昨日のエントリでawkとsedを使用しない縛りプレイをしたわけですが、awkを使ってみたら一撃でできちゃいました。 awk 'NR!=1{k1[$1]=0;k2[$2]=0;ks[$1,$2]=ks[$1,$2]+$3}END{for(h in k2) printf "\t" h;print"";for(o1 in k1){printf o1;for(o2 in k2){v=ks…
ひとつ前のエントリの中で、2つのリストをCROSS JOINする、ということを行っています。 データの流れ [tmp.key1] A B I[tmp.key2] Ice Juice OREO上記二つのファイルをCROSS JOINしたような感じで、下記の出力を得ます。 A,Ice A,Juice A,OREO B,Ice B,Juice…
きっかけ こことここを見ていたら、やってみたくなったので・・・ 内容 仕様(やりたいこと) こんなファイル [sample.txt] を、集計して、こんな感じ Ice Juice OREO A 310 0 0 B 130 120 0 I 0 0 630 ,Ice,Juice,OREO A,310,0,0 B,130,120,0 I,0,0,630に変換…
PleiadesをDLしている合間に…… 概要 タイトルの通りです。[colorls.sh] ……そろそろPleiadesのDL終わったかな。
ffmpegとgogoを使用。パッケージの準備 pkg_add -r ffmpeg pkg_add -r gogopetit ※ffmpegのインストールには結構時間がかかります (もっと軽いパッケージでできないものか) で、変換 ffmpeg -i hoge.wma -y hoge.wav gogo-petit -b 128 hoge.wav hoge.mp3 …
du -s /usr/ports/* 2>/dev/null | sort -r -n | head -10 | awk '{print $2}' | xargs du -sh 2>/dev/null | cat -n ざっくりとした解説 du -s して各ディレクトリの容量の集計を取得 sort -r -n でひっくり返す -n オプションは、フィールドを数値扱いでソ…
ヒアドキュメントをパイプでsedに噛ますだけ。 cat <<'EOS' | sed 's/%AI/DAMAI/g' %AI:Yes sister, GOOD SISTER! /// NANAGY:... Why am i here? %AI:Because we are sister! EOS 実行結果 DAMAI:Yes sister, GOOD SISTER! /// NANAGY:... Why am i here? D…
ざっくり、シェルスクリプトとPerlで実装。 色々参考にしつつ。一部変なコメントが入っていますがそれはそれで。[stat.sh]
2つのディレクトリをlsした結果を比較したりとか、awkで作った2種類のリストを比較したりとか、そういうことをしたかったので考えてみた。 解説 コマンドを && で繋いで () で括って sort して uniq してるだけ。 [def-concat_commands.sh] [test_def-conc…