[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

unixに関するsuVeneのブックマーク (53)

  • 技術メモ帳 - 単語抽出するちょっとしたテクニック

    shell のちょっとしたテクニック - odz buffer odzさんのところで単語の出現頻度を調べるためのワンライナーが紹介されている。 単語抽出についてはいくつかやり方があるので紹介する。 特に egrep -o は非常に実用的。 もちろん、この話はリンク先において主題ではない。 俺のただの自己満足。 tr -cs で単語抽出 $ tr -cs 'a-zA-Z' '\n' < ./.zshrc 上記コマンドで、a-zA-Zのみで構成される文字列を抽出できる。 -c オプションで、'a-zA-Z' の補集合(以外)を '\n' に変換し、 -s オプションで、最後の引数で指定される要素の重複を除去している。すなわち '\n' の連続を除去している。 grep -o で単語抽出 grepには、( -o、--only-matching ) オプションというのがある。 これは、指定された正

    suVene
    suVene 2007/02/01
    egrep -o
  • shell のちょっとしたテクニック - odz buffer

    後輩が cat README | tr ' ' '\n' | sort | uniq -c | sort -nr | head てなテクニックを見て、びっくりしたみたいな話をしていたのだが、こういうパイプラインを利用するテクニックを学んでいないのは色々損な気がする。 ていうか、サーバで丸一日以上かかるような処理を実行するのもしょっちゅうなのに、GNU screen も nohup も知らないってのはいろいろ支障があるような気もするのだが、だれも教えないものかなぁ。 ということで、bash or zsh のちょっとしたテクニックとか*1。リダイレクトとかパイプラインは略。 連続実行 単純に連続実行。 % foo; barfoo が正常終了したときだけ bar を実行 % foo && barfoo が正常終了しなかったときだけ bar を実行 % foo || bar&&、||は来は論理演

    shell のちょっとしたテクニック - odz buffer
  • JS/UIX - Terminal

    JS/UIX - Terminal > open terminal JS/UIX is an UN*X-like OS for standard web-browsers, written entirely in JavaScript (no plug-ins used). It comprises a vir- tual machine, shell, virtual file-system, process-management, and brings its own terminal with screen- and keyboard-mapping. For an overview of implemented commands have a look at the complete > JS/UIX-Manual-Pages; see also the > Version-His

    suVene
    suVene 2007/01/27
    javascript で 擬似端末実装。 おもろい
  • xargsについて - hogehoge @teramako

    技術メモ帳 - xargsコマンドを使って指定したコマンドを並列実行させる -n,-Pとか全然知りませんでした。参考になりました。 オイラが知っているのは-iオプションかな。 と思ってmanマニュアル見てみたけど、うちのDebian君にもCygwin君にも-iの使い方が載ってないね...。載ってましたAIXのコマンド・リファレンスには載っていた。 まぁxargs --replace={},xargs -I {}と同じで、{}に各行が入るオプションになるわけで、 cat <file> | xargs -i expr "{}" : ".*" とかすると各行の文字数を調べられたり。 個人的にはこちらの方が打つのは面倒だけど、コマンドの好きなところに埋め込めるので汎用性が高いと思っていたり。

    xargsについて - hogehoge @teramako
  • xargsコマンドを使って指定したコマンドを並列実行させる - 技術メモ帳

    あまり知られていないが、GNUのxargsコマンドには、 プロセスの最大数を設定できるオプションというのが用意されている。 コレを使って、プロセスを並列実行させてみよう。 xargs --max-procs=MAX-PROCS -P MAX-PROCS command MAX-PROCSに数字を指定すると、 最大で、その数だけ command プロセスを生成する。 デフォルトは、1プロセスだけになっている。 いくつか例を交えて説明する。 サンプルとして、以下のようにURLが行ごとに記述されたファイルを元に curlをxargsで並列実行して、HTMLデータを取得してみよう。 $ cat ./url_list.txt http://www.google.co.jp/ http://www.yahoo.co.jp/ http://b.hatena.ne.jp/ まず、普通にxargsを使ってc

  • Geekなぺーじ:10のUNIX小技

    IBMのサイトで「Learn 10 good UNIX usage habits」という記事が発表されていました。 面白かったので要約してみました。 変な部分があるかも知れないので詳細は原文をご覧下さい。 原文とは一部異なります。 ページスペースなどの関係でコマンド引数などを短く省略しています。 原文のサンプルコマンドが間違っていたりするので、修正している部分もあります。 原文を修正しているのは、tar.gzをzオプションを使わないでxfvしようとしているところと、xargsにlsではなくls -lを渡している部分です。 あと、説明文を短くしてしまっています。 1. ディレクトリの作成 良く使うコマンドの一つであるmkdirですが、面倒臭い使い方をしていませんか? 悪い例 ~/ $ mkdir a ~/ $ cd a ~/a $ mkdir b ~/a $ cd b ~/a/b/ $ m

    suVene
    suVene 2007/01/11
    ブクマしようとして、ブクマ数にビックリしたw
  • 複数のファイルの名前をまとめて変更する on zsh - 技術メモ帳

    最も簡単なやり方を紹介するのを忘れていた。 for file (*.html) mv $file $file:r.htm

  • lessでtail -f - 技術メモ帳

    less 起動中に、F と大文字で入力する事で、 tail -f のような挙動になるらしい。 知らなかった。 いつでも気軽に直前のログを見に戻る事が出来るのが良いね。 Ctrl + C で元のモードに戻る。 lessの場合 less +内部コマンド名 としておく事で起動時に内部コマンドを実行できるので とりあえず、ltailf という名前でエイリアスしておいた。 alias ltailf='less +F'

  • 技術メモ帳 - pgrep, pkill を使用してプロセスを殺す

    最近、会社でシェルの操作方法について教えているのだが、 pgrep / pkill / skill / pidof といった 便利なプロセス操作系コマンドを知らない人が実に多い。 プロセスを殺すというのは、よくある作業なので 今回はコレについて書いてみる。 たとえば、これらのコマンドを知らない人が、 指定した名前のプロセスを kill する手順はだいたい 以下のようなものになることだろう。 $ ps aux | grep プロセス名 | grep -v 'grep' # コマンドの出力結果から pid を目で確認 12345 ... .. hoge .. .. $ kill 12345 この作業は非常に面倒で退屈だ。 もし殺さなければならないプロセスがたくさんあったときは どうするのだろうか。 おまけに、grep コマンド自身が候補に含まれてしまう事があるのだが、 grep -v grep

    suVene
    suVene 2006/11/02
    『pgrep -f 'プロセス名' | xargs kill』
  • http://blog.33rpm.jp/speed-up-grep.html

    suVene
    suVene 2006/10/13
    grepはLC_CTYPE=en_US.UTF-8、LC_CTYPE=Cだと前者が早いって話らしい。
  • find - ファイル検索コマンド

    [Linux] => [Linuxコマンド(A〜I)] findコマンドはファイルやディレクトリを再帰的に検索してくれます。 [主なオプション] -name ファイル名及びディレクトリ名にマッチするものを表示 -iname -nameと同じだが、大文字小文字を区別しない -regex ファイル名が正規表現にマッチするものを表示 -iregex regexと同じだが、大文字小文字を区別しない -type ファイルタイプを指定。タイプにはd(ディレクトリ)、f(ファイル)、l(シンボリックリンク)を指定 -emtpy ファイルが0byteもしくは中身のないディレクトリを表示 -size ファイルのサイズで検索。通常kオプションをつけてキロバイトにて指定 [使用例] #空のファイルを削除 find . -empty -exec rm {}\; #ユーザ確認を求めない find . -empty

    suVene
    suVene 2006/10/01
    linux command find
  • ファイル記述子をUnixドメインソケット経由で渡す - bkブログ

    ファイル記述子をUnixドメインソケット経由で渡す Unix 系の多くの OSには、ファイル記述子を別のプロセスに Unix ドメインソケット経由で渡す機能があります。一見、何のために使うのかよくわからない機能ですが、 glibc の nscd はこれをうまく使っています。 nscd (name service caching daemon) は glibc 内で行われる名前関連の問い合わせをキャッシュするサーバです。NIS や LDAP などを用いてネットワークベースでユーザ管理を行っている場合、 getpwuid() などの関数はユーザ名の取得にネットワークアクセスを必要としますが、 nscd を立ち上げておけば、二度目からの同じ問い合わせはキャッシュから得られます。 nscd を立ち上げている GNU/Linux システムでは、キャッシュファイルが /var/db/nscd 以下に作

  • [from rtk2106] Open Tech Press | screenで遠隔教育

    先日、ちょっとした遠隔教育をする必要があった。Linux上でソフトウェアをビルドするデモを見せて欲しいと同僚が言ってきたのだ。問題は一つ。私が東海岸、彼が西海岸にいたことだ。さて、ビルドとインストールの方法をどうやって彼に見せようか。いくつかの候補を検討した結果、私たちはGNU Screenを使うことにした。 私たちが最初に考えた候補は、標準Unixユーティリティのscriptを使ってログをとるという案だ。しかしscriptはいくつかの問題点を抱えている。例えば、結果の出力がすさまじい(scriptは、キャリッジリターンや訂正を含めた何から何までを保存する)という、無視しがたい問題点がある。加えて、scriptではインタラクティブ性が完全になくなる。同僚が質問したかったり、説明を必要としたら、後から電子メールでのやり取りが必要になっただろう。これでは彼にとっても私にとってもイライラが募る。

    [from rtk2106] Open Tech Press | screenで遠隔教育
    suVene
    suVene 2006/09/11
    『GNU Screen』
  • Nippon Kaisho システムツール [ CRONTAB設定ヘルパー ]

    ■ What's This? UNIXのCRONTABの設定ヘルパーです。 crontabとはUNIXのバックグラウンドで自動処理を行う「CRON」デーモンへの指示です。もっと簡単にいいますと「毎日*時*分に/home/cron.shを実行せよ」といったもの。 ユーザーレベルで設定ができるUNIXのシステム管理必携ツールです。 solarisやXwindow系のマウスユーザーの方はGUIツールを使われていることでしょうが、コマンドパンチャー(?)にとっては便利なツールかと思われます。 crontabの設定を覚えるのが面倒な方以外にも、crontabを勉強されている方は設定方法の参考にお使いください。(とりあえずの答えを出せます) 更に詳細設定についてはJFなどをご覧ください。

    suVene
    suVene 2006/09/05
    crontabの設定をweb上で。
  • 複数のファイルに対して tail -F をする

    複数のファイルに対して tail -F をするまぁ tail -F だと一個のファイルなんで、 複数のファイルを見張れると、たまに便利。 もちろん % tail -f ファイル1 & % tail -f ファイル2 & % tail -f ファイル3 & とかすれば同じようなことではある :-) ftp://ftp.fml.org/pub/mtail/ に mtail.pl という perl script があります。 使い方は % mtail file1 file2 file3 ... のようにするだけです。 なお /var/log/messages のように expire するもの、つまり messages -> messages.0 などとして、古い内容は別ファイルになり、新しいファイルが生成される ようなケースでは、同じ名前のファイルを再度 open() しなおして 見はり続けなけ

    suVene
    suVene 2006/08/29
    tail -F
  • unix_CommandMemo - igaiga fswiki

    UnixCommandMemo 最終更新時間:2006年12月21日 17時55分30秒 sed ディレクトリ内の全ファイルでigaがあれば全てIGAに置換。(-i:入力ファイルを編集して出力 , -e:エディット) % sed -i -e "s/iga/IGA/g" * 置換して標準出力に出力 % sed -e "s/aaa/IGA/g" * RPM http://www.atmarkit.co.jp/flinux/rensai/linuxtips/049instrpm.html インストールモジュール一覧表示 % rpm -qa インストール % rpm -i [*.rpm] バージョンアップ % rpm -U [*.rpm] アンインストール % rpm -e [package name] chown, chgrp ファイル、ディレクトリの所有者変更(サブディレクトリまで再帰的に変更

  • 詳解UNIXプログラミング - いやなブログ

    詳解UNIXプログラミング いつか全部読もうと思いつつ、長らくつまみ読みしかしていなかった『詳解UNIXプログラミング』を、ようやく思い立って最初から最後まで読みました。 こののすごいところは、ほとんどすべてのページに、Unix のシステムプログラミングを行う上で重要なことが書かれていることです。書を通読しながら、「こんなこともできたのか」「こんな落とし穴があったのか」「こういう仕組みだったのか」といった発見が数え切れないほどありました。 買った当初は、とりあえず持っておいて必要なときにリファレンス的に使えばいいや、と考えていたのですが、リファレンスというものは「何ができるか」をある程度知っていないと有効に活用できません。そういった意味でも通読して、Unix のシステムコールでどんなことができるのかを一通り知ったのは大きな収穫でした。 書では全編を通じて、システムプログラミングにあり

    suVene
    suVene 2006/08/03
    思わず本が欲しくなるような評価。
  • http://www.scl.kyoto-u.ac.jp/scl/appli/appli_manual/SUNWspro/WS6U2/ja/IPE/dbx/dbx88.html

  • ksh(1)

  • http://obog.ome.meisei-u.ac.jp/~bee-x/solaris/sol_index.html

    suVene
    suVene 2006/05/19
    soraris8環境設定(基本)