- echo
$ echo -e "foo\tbar" foo bar
- printf
$ printf "foo\tbar\n" foo bar
ただし、環境によっては echo の '-e' オプションが使えないとの意見あり(シェルの仕様に依存する)。
$ echo -e "foo\tbar" foo bar
$ printf "foo\tbar\n" foo bar
ただし、環境によっては echo の '-e' オプションが使えないとの意見あり(シェルの仕様に依存する)。
中括弧(brace)を使ったイディオム、たとえば
$ cp /foo/bar{,.orig}はよく使っていた。でも数列まで扱えるとは知らなかった。数列を作るときは seq コマンドを使って
seq 1 10などと打っていた。
これも間違いではないが、中括弧を使えば seq 無しで、すなわち、
{1..10}と書けるのだった。おそらく中括弧を使ったほうがスッキリきれいに書ける場面が多いだろう(キーボードを打つ回数だけ比較したらあまり変わらないかもしれないが。。。)この brace expansion で数列を作る具体例のほとんどは「LinuxTips 連番ファイルをコマンド一発で作成する」に書いてあるのであまり付記することは無い。強いて挙げるならば、増分(increment)も指定できる点。以下がその例。
$ echo {1..10..2}
1 3 5 7 9
$ echo {z..a..5}
z u p k f aMacBook に VMware Fusion を入れ、ゲストOSに Linux を入れ、コンソールで作業している場合の話。
別のコンソールに切り替えようとすると大抵は間違ったキーを押してしまう。たとえばただ単に B や C の文字がぽつんと表示されておしまいである。これがMacでなければ Alt + F1(F2,...,F6) キーで間違うことはないのだが。。。
この環境で打つべき正しい組み合わせは次のとおり:
optionキー + fnキー + F1(F2,...,F6)
失敗の原因は「option」でなく「command」を押してしまうこと。Macのoptionキーにはよく見ると "alt" という文字も書いてあるので見れば分かるというのに。。。とはいうもののキーボードの表面などは滅多に見ないのだからしかたがない。
システムドライブ以外のドライブに対して「不良セクターのスキャンと回復」を有効にしてエラーチェックつまり "chkdsk /r" コマンドを実行するとメモリを大量に消費する。
What we do with a bug report? - Engineering Windows 7 - Site Home - MSDN Blogs
うちの Windows7(RAM 12GB搭載)でも確かに再現。2TBの外付けハードディスクドライブに対して chkdsk /r を実行し、しばらくするとメモリ使用量が8GB近く、システム全体で10GBほどに上がった。ここまで上がるとある意味楽しい。そして一晩寝かすと途中で強制終了されていた。
しかたないのでVMに入っている Windows Server 2008 で同じ chkdsk /r を試してみたら、問題は起こらなかった。
こじんまりした話題だが、、、grepコマンド自身がプロセスのリストに表示されるのがわずらわしいとき、いちいち「grep -v grep」を通してた。これは正規表現を使って簡潔にできる。
ps aux | grep mingetty | grep -v grep
ps aux | grep mingett[y]
ps aux | grep [m]ingetty
昔から脈々と受け継がれているらしい。2006年にはブログに書いている人がいるから。
ちなみに自分の場合は「プロのためのLinuxシステム・10年効く技術」という本で知りました。