2013-01-01から1年間の記事一覧

コマンドラインで計算をする方法(`expr`、$(())、let)

私なんかは古い人間ですので、`expr`を使う以下の方法に慣れ親しんでいるのですが、 $ expr 1 \* 10 10 調べてみると、他に2つほど方法があるようで $(())を使う方法(ただしこちらも正数演算のみ。その代わり**で累乗計算もできる) $ echo $(( 1 * 10)) 10…

aproposコマンド(manページの検索)

$ apropos kill kill (1) - terminate a process kill [builtins] (1) - bash built-in commands, see bash(1) killall (1) - kill processes by name killall5 (8) -- send a signal to all processes pkill [pgrep] (1) - look up or signal processes bas…

lsコマンドの結果を1ファイル1行で表示する

$ ls > ./tmp_$$ && grep -v "tmp_$$" ./tmp_$$ && rm -f ./tmp_$$ もしくは $ ls -1 後者のほうがエレガント

unexpandコマンド(スペースをtabに変換する)

こんなコマンドもあった。 $ unexpand -a -t 1 sample2.txt 1 2 3 オプションの-aはall blanks、-tはタブに置き換えるスペースの数? みたいだけどちょっと動作がよくわからない……。 結論 sed, tr, awkという便利なコマンドがあります

expandコマンド(tabをスペースに変換する)

これブログ上じゃ差が判らないけど、 $ cat sample.txt 1 2 3 (数字がタブ区切りで書かれている) というファイルに対して、expandコマンドを実行すると $ expand sample.txt > sample2.txt $ cat sample2.txt 1 2 3 $ ll sample* -rw-rw-r-- 1 yasuhiro_ka…

Linuxコマンドラインで10000を10,000と表示する方法

小ネタ。かつて社内でこんなこと訊かれて答えたっけなぁなどと思いつつ……。 $ printf "%'d\n" 10000 10,000 まぁ、*nixのprintfコマンドなんてめったに使うことないですけどね……。

install.shがそのままでは動かないので修正する

redisの初期構築をやってくれるスクリプト、/path/to/src/util/install.sh、そのまま実行すると、 # ./install_server.sh Welcome to the redis service installer This script will help you easily set up a running redis server Please select the redis…

ターミナル上でtabを入力する

http://memo-off.blogspot.jp/2011/04/linuxsort.html ↑ここにあるとおり、Ctrl + Vの後にTabキーを押せば入力できる。もちろんsort以外でも使える。 echoだと、 $ echo -e "a\tb" みたいに-eと\t使っちゃうけど。

Fedra18入れた

メディアからFedra18(いや今なら19入れろよ、と言うのはおいておいて)を入れたので、メモまず注意。Scientific Linux6.4でいうserviceやchkconfigの代わりにsystemctlというコマンドを使う。主なコマンドの比較は以下のとおり。 # Scientific Linux6 Fedor…

pidofコマンド

メモ程度に 今日、職場でchef職人(私はまだchef全然触ってないです。電子書籍も買ったのにもったいない…)との会話の中で chef「いやぁ、/etc/rc.d/init.d/hoge statusの結果を見てセットアップするかしないかを判断してるみたいなんですが、うまくいかない…

LLまつりに行ってきた(シェル芸復習その3[残りの問題]の巻)

今回でラストです。駆け足で行きます。 5問目: https://twitter.com/usptomo/status/371104072692019200 延々とフィボナッチ数を出力するワンライナーを記述してください。ただし桁数が増えてもなるべく正確に。0,1,1,2,3,5,8,13... これは簡単 a=0 ;b=1 ; …

LLまつりに行ってきた(シェル芸復習その2[3,4問目]の巻)

前回の続きです。 3問目: https://twitter.com/usptomo/status/371095051826245632 次のechoから始めて4つの数字の間に + - * / の符号を入れ、100になる計算式をワンライナーで一つ作ってください $ echo 56 2 8 9 今回解答を見た中で、一番狂ってる(褒め…

LLまつりに行ってきた(シェル芸復習その1[1,2問目]の巻)

お題の通りでして、すみだ産業会館で開催された、LLまつりに行ってきました。 今回の本命はコチラ。 「第6回チャンピオンシップシェル芸ランナー勉強会 in LLまつり」です。今回は残念ながら7問中2問しか解けなかったので、復習がてら、時間無制限で再度問題…

コードを読めないインフラエンジニア

以前はまぁそれでもやってけると思ってたんですよね。特に前職、SIer子会社で働いていた時は。 なんてったってサポートにぶん投げりゃいいし。 そんなメンタリティの人間がweb屋に移って約一年。見事に痛い目にあいました。 いや、某ソフトウェアのバグを見…

Ruby2.0でchefを動かす

とりあえず、やってみたので、メモ。環境はScientific Linuxの6.3 sh-4.1$ sudo yum install gcc make cloog-ppl cpp glibc-devel glibc-headers kernel-headers libgomp mpfr ppl sh-4.1$ wget ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.gz …

pasteコマンド

linuxにはpasteというコマンドがあって、複数ファイルの各行を結合することができる。 使う機会があるかどうか微妙だけど、知ってしまったのでメモっておく。 sh-4.1$ cat test1 123 45 6789 sh-4.1$ cat test2 aaa aaaaa a aaaa aa sh-4.1$ cat test3 ii ii…

githubに(再び)手を出してみた

git

何年か前に作っただけで放置していたgithubのアカウント。 最近仕事でgit使うことが多いので、お勉強を兼ねて再度使って見ることに。初期設定はココを参考に↓ http://d.hatena.ne.jp/shim0mura/20111212/1323660740ちなみに渡しの場合は、 $ git push -u ori…

CentOSやScientific Linuxを入れるときにしているURLを、よく忘れるので、メモ images/install.imgは勝手に付加されるので、imagesディレクトリがあるディレクトリを指定すればOK SL6.3だったら、こんな感じ↓ http://ftp.jaist.ac.jp/pub/Linux/scientific/6…

makeのjオプション

gnu makeにjというオプションが有ることを初めて知った。 -j [N], --jobs[=N] 一度に N 個までのジョブを許可; 無引数だとジョブ数 制限なし.なら引数なしの無制限がいいんだろうなぁ、と思ったら、http://www.usamimi.info/~mnn/d/2009/01/10397 こちらで、…

mii-tool

NICの状態を確認できるらしい # mii-tool No interface specified usage: mii-tool [-VvRrwl] [-A media,... | -F media] <interface> ... -V, --version display version information -v, --verbose more verbose output -R, --reset reset MII to poweron state -r, -</interface>…