タイトルの通りですが、xargsコマンドの便利さを紹介する記事を書いてみました。xargsは私が大好きなコマンドの一つで、標準入力から渡されたファイル名などを引数とみなして、別のコマンドの引数として起動するというものです。 例えばfindで見つけたファイルを全部削除したい場合、xargsなしでも下記のように書くことができます。
タイトルの通りですが、xargsコマンドの便利さを紹介する記事を書いてみました。xargsは私が大好きなコマンドの一つで、標準入力から渡されたファイル名などを引数とみなして、別のコマンドの引数として起動するというものです。 例えばfindで見つけたファイルを全部削除したい場合、xargsなしでも下記のように書くことができます。
OSXが素晴らしいGUI環境を提供してくれるのだから、わざわざコマンド操作を覚えるまでもないと考えていた。ところが、OSXのGUI環境を素早く・便利に使いこなすためには、キー操作を組み合わせたショートカットが必須*1である。そして、ショートカットとは何かを考えれば、キー入力以外の何者でもなく、突き詰めればコマンド入力と大差ないことに気付く。 Finderからcommand-Nで新規ウィンドウをを開くのも、ターミナルでlsと入力するのも、キー入力のタッチ数は同じである。 Quicksilverなんて、高度な入力補完機能付きのターミナルのようなものかもしれない。 つまり、GUIはコマンド入力と組み合わせることで、最大の効率化を図れるのである。 ところで、OSXのGUI操作にはそれに対応するコマンドが用意されていることが多い。(どちかというと、コマンドが先でそれにGUIを着せた結果なのかもしれな
たとえば以下のように A というサーバーをログインしなければ到達できない B というサーバーがあったとき local --> hostA --> hostB 二回に分けて入力するのが面倒くさい。 local$ ssh user@hostA # Aにログイン成功 hostA$ ssh user@hostB # やっとBに到達。面倒!! hostB$ そんなときに、以下の構文を思い出すことだろう。 ssh user@host リモートで実行したいコマンド リモートで実行したいコマンドで "ssh user@hostB" ってやったらいいんじゃないかと 思いつきでやってしまうと、以下のようにエラーになる。 $ ssh user@hostA "ssh user@hostB" Pseudo-terminal will not be allocated because stdin is not a t
最近、会社でシェルの操作方法について教えているのだが、 pgrep / pkill / skill / pidof といった 便利なプロセス操作系コマンドを知らない人が実に多い。 プロセスを殺すというのは、よくある作業なので 今回はコレについて書いてみる。 たとえば、これらのコマンドを知らない人が、 指定した名前のプロセスを kill する手順はだいたい 以下のようなものになることだろう。 $ ps aux | grep プロセス名 | grep -v 'grep' # コマンドの出力結果から pid を目で確認 12345 ... .. hoge .. .. $ kill 12345 この作業は非常に面倒で退屈だ。 もし殺さなければならないプロセスがたくさんあったときは どうするのだろうか。 おまけに、grep コマンド自身が候補に含まれてしまう事があるのだが、 grep -v grep
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く