*nix

shellshock と sudo

CVE-2014-6271を発端とする bash の脆弱性、いわゆる ShellShock って呼ばれている奴。環境変数に仕込んだ任意のコマンドを実行できてしまうってことから、CGI との組み合わせが取り沙汰されている。その頃 sudo の設定の勉強をしていたので、ふと気になった…

s-bit, sticky-bit について

今更ながら、基本のおさらい s-bit (sビット) setuid, setgid のことで、そのファイルのオーナーまたはグループの権限で実行するただし、各オーナーやグループに実行権が付いている、かつ、実行するユーザが実行できるパーミッション(オーナーかグループか…

curl の multipart/form-data 送信が遅い

個人的メモローカルでサーバを立てて実験中、妙に反応が悪いので何でだろうと思ってた $ curl -V curl 7.27.0 (i686-pc-cygwin) libcurl/7.27.0 OpenSSL/1.0.1c zlib/1.2.7 libidn/1.25 libssh2/1.4.2 Protocols: dict file ftp ftps gopher http https imap…

アニメーションpng を作る

まぁGimpのプラグインとかを使っても良いんだけど、アニメーションGifをアニメーションpngに変換するツールがあるので、その紹介。 GIF to APNG | Free software downloads at SourceForge.net Jari Aalto - [ANNOUNCEMENT] New package: gif2apng 1.7-1 -- …

cat コマンドでネコを走らせる

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

特定ディレクトリ以下を除いた find をする方法

find . -name "foo" -prune -o -print 同僚から、あるディレクトリ配下で特定ディレクトリ配下を排除したファイルリストが欲しい、何か方法はない? と訊かれた。find の !使えば良いじゃんと思ったが、前提として環境はAIX*1だ。-pathオプションがない。-pa…

シェルスクリプトでデーモンを作る

デーモンって言ってもモドキだけど。 デーモンってたしか 制御端末を持たない 親プロセスが1(initの子プロセスである) が定義だったと思う。それに似たものを作る。 exe="sleep 30" pidFile=daemon.pid start(){ if pid=`status` >/dev/null ;then echo "\`$…

TwitterIrcGatewayのデーモン化

TwitterIrcGateway - misuzilla.org 毎回手で打って起動するのは面倒だし、そのままではデーモンプロセスにならないのでシェルスクリプトを書いた。やっていることはstart-stop-daemonで楽々デーモン化 - みずぴー日記とほぼ同じ /home/teramako/bin/tig.sh#…

シェルスクリプトでSL

shell/sl.sh at master from teramako's scripts - GitHub 勢いでslコマンドをshell scriptで実装してみた。 bashを前提としている。データは豊田正史とslコマンド (Masashi Toyoda and SL command)から拝借した。残念ながらオプションによる挙動の変化はつ…

GNU screenのコマンドをまとめて実行

tscreenに移行したわけで、その際に設定の見直しをし始めた。で、タイトルどおりのあのだが、コマンドをまとめて実行したい。 具体的には 画面分割する(split) 分割した画面にフォーカス移動(focus) シェルを実行(screen) man screenでマニュアルを読んでた…

Debian壊れた

先日の話だけど、Debianのsidをアップデートしたらxserver-xorgあたりのパッケージが変なことになったみたいで、GUIが立ち上がらなくなった。 ぬるいユーザなので復旧のさせ方がわからないので諦めて、Ubuntuをインストール。 データ貯蔵先(/data)と/homeは…

SpidermonkeyでE4X

rhinoでE4Xの続き。コメントでspidermonkey-binは? とid:takano32さんに言われたのでインストールしてみた。 $ apt-cache search spidermonkey libmozjs-dev - Development files for the Mozilla SpiderMonkey JavaScript library libmozjs1d - The Mozill…

/etc/sudoers の編集にはvisudoを使用しよう

sudoが出来ない - think and error /etc/sudoersの編集は直にエディタで開くよりvisudoコマンドを使用したほうが良い。ちょうど良いドキュメントがあったので引用。 visudo は、vipw(8) と同じような安全な方法で sudoersファイルを編集する。 visudo は複数…

: コマンド

知らなかった。 :コマンドなんてものがあるなんて... : [arguments] 何もしません。このコマンドは arguments を展開し、指定されたリダイレクトを実行する以外には何も行いません。終了コード 0 を返します。 Manpage of BASH 何のためにあるのか全然分から…

複数ファイルを一気に置換

質問した - IT戦記 複数の C++ のソースファイルに対して、一度にシンボルの置換を… - 人力検索はてな ありがとうございます。 sed ですね。 あまり使ったことがないのですが、多少誤変換が怖い感じがします。 杞憂でしょうか。 単語の境界を指定すれば以外…

プロファイル単位でvimpのHOMEを切り替えて起動するスクリプト 2

ディレクトリ構成はプロファイル単位でvimpのHOMEを切り替えて起動するスクリプト - hogehoge @teramakoを参照 vimperator.sh#!/bin/sh FIREFOX=~/opt/firefox/firefox DEFAULT_PROFILE=default ARGS="-P" export VIMPERATOR_HOME=~/vimp/${1:-${DEFAULT_PRO…

添削:業務で楽するためのUNIXテクニック集 まずはおさらい、シェル制御構造と正規表現の基礎:CodeZine

幾つか気になる点があるので書いておくよ。 執筆者KEIさんが修正してくださったので、以下の記事は既に古いものとなっている コマンドが左から右に順に実行されます。コマンド1が正常終了(終了コードが0)したら、コマンド2が実行されます。 コマンド1 ; コ…

vimperatorパッケージ発見

Debian GNU/Linuxのパッケージにiceweasel用のvimperatorを発見した。何気なしに、apt-cache search vimperatorを打ったら出てきた。 $ apt-cache show iceweasel-vimperator Package: iceweasel-vimperator Priority: optional Section: web Installed-Size…

Re: ソースコード行末の不要なスペースやタブを除去する

ソースコード行末の不要なスペースやタブを除去する - Hatena::Rubyist::Ubuntu - Rubyist sedによる書き換えは sed -i 's/[[:blank:]]*$//' だけでOK。-iオプションで直にファイルを書き換えられる。シェルスクリプトにするなら #!/bin/sh /bin/sed -i 's/[…

VirtualBox-oseにWindowXPを入れた

半分ゲーム用途で入れたんだが...Direct3Dが動かないみたい。これじゃ2Dゲームしか出来ないじゃないか。オイラがやりたいのは3Dなんだよ。エロゲ目的じゃないから2Dだけじゃ困るんだよ。くそ、半分意味をなくした。 まぁいいや、もう半分のMozilla系アプリの…

fglrx + Compiz + デュアルディスプレイが出来ない件

デュアルディスプレイとCompizは二者択一でつか? - hogehoge @teramakoの補足 PCスペック CPU Core2 Quad Q6600 Memory 4086MB VideoCard RV630 (ATI Radeon HD 2600 XT) Monitor LEN D221 Wide(1680x1050) +RDT1712S(1280x1024) OS Debian GNU/Linux (kern…

デュアルディスプレイとCompizは二者択一でつか?

メインマシンをDebianにする デュアルディスプレイに挑戦 うは、1680x1050 + 1280x1024 すげーひろーい Compizにも挑戦だ fglrxドライバ...orz glxgears全然動かね fglrx-driver,fglrx-kernel-src,kernel-header,ligl1-mesa-dri,libgl1-mesa-glxから構築し直…

オイラのxmodmap

オイラの~/.Xmodmapをさらしてみる。 使用キーボード 日本語106キーボード CapsをCtrlに(元のCtrlはそのまま) まぁこれは良くある設定 全角/半角をESCに vimを良く使うので指の届く範囲にESCが無いと落ち着かない 左Altを全角/半角に HHK lite2 の時から薬指…

Shellの[[ ... ]]と[ ... ]の違い

主にbashとかkshの話 404 Blog Not Found:perl - glob,readdir, and regexpを読んで、昔Shellのグロブ展開でハマったことを思い出したので適当に書いておく。Shellスクリプト等で複合コマンドの[[ ... ]]とtestコマンドと同等の[ ... ]をきちんと使い分けて…

ex(vim -e)コマンドを使おう

sedとxargsで特定文字列を一括置換する方法。 find ./ -name *.html | xargs sed -i 's/検索文字列/置換文字列/g' sedとxargsで特定文字列を一括置換 - プログラマになりたい んー、これだと上手く動かないよ。 find ./ -name *.html | xargs sed -i 's/検索…

zshのviキーバインドの設定を幾つか晒してみる

端末によってキーコード(?)は違うので参考までに HOME/.zshrcの一部bindkey -v autoload history-search-end zle -N history-beginning-search-backward-end history-search-end zle -N history-beginning-search-forward-end history-search-end bindkey '^…

シェルスクリプト等の先頭行に必要なアレの意味

とりあえず、 #!/bin/cat -n hogehogeというような内容のファイル作って実行権与えて、実行してみれば良いんじゃないかな。

CUIとGUIをつなぐというHotwireを試してみた

Google Code Archive - Long-term storage for Google Code Project Hosting. ちょっと前にコマンドラインとGUIを融合するHotwire | OSDN Magazineで紹介されていたので試してみた。 Hotwireスクリーンショット 感想 Don't read me, read the web: http://ho…

ps -ef | grep hoge | grep -v grep ではなく、ps -ef | grep [h]oge

ps -ef | grep hoge | grep -v grepではなく、ps -ef | grep [h]ogeとした方が良い、という事を知った。 理由はプロセスのフォークが一つ減るから。 grepプロセスの引数は[h]ogeであるからhogeには引っかからないというわけ。言われてみればその通りだが、今…

コンソールから英辞郎検索

新しい英辞郎で検索するスクリプト - 32nd Diary (2007-08-12) またしても英辞郎ネタ。 id:takano32さんのはRuby使っているけど、職場のCygwinにはRubyは入れてないのでちょっと変更 #!/bin/sh WORD=`echo "$*" | nkf -Sw` URL="http://eow.alc.co.jp/${WORD…