パッケージ情報の取得
2005-07-25-3 / カテゴリ: [unix][Solaris][command] / [permlink]
% pkginfoこれで、パッケージ一覧が表示される。
(バージョン情報等を含む)詳しい情報は
% pkginfo -l
特定パッケージについては
% pkginfo | grep -i ssh application SMCossh openssh % pkginfo -l SMCossh PKGINST: SMCossh NAME: openssh CATEGORY: application ARCH: sparc VERSION: 3.7.1p2 BASEDIR: /usr/local : :こんな感じで。
fetchmail と ssh ポートフォワードの併用(さらにapop)
2005-07-23-2 / カテゴリ: [linux][command][ssh][POP3][メール] / [permlink]
.fetchmailrcに
pop.example.org に ssh セッションを張って、ローカルへの 10110 アクセスを pop.example.org の 110 へフォワード。でもって、ローカルの 10110 へ apop で pop3 アクセス。sleep 15 は、retr が完了しきれる時間を考慮すること。
.id_rsa_nonpass はパスフレーズなしの ssh 秘密鍵。管理はしっかり!
set postmaster zaki set no bouncemail set logfile $HOME/log/fetchmail.log defaults flush fetchall no mimedecode no rewrite smtphost localhost poll pop.example.org via localhost port 10110 proto apop username 'username' preconnect "ssh -f -L 10110:pop.example.org:110 -i ~/.ssh/.id_rsa_nonpass zaki@pop.example.org sleep 15" password 'pop-passwd'
pop.example.org に ssh セッションを張って、ローカルへの 10110 アクセスを pop.example.org の 110 へフォワード。でもって、ローカルの 10110 へ apop で pop3 アクセス。sleep 15 は、retr が完了しきれる時間を考慮すること。
.id_rsa_nonpass はパスフレーズなしの ssh 秘密鍵。管理はしっかり!
ssh ポートフォワード
2005-07-23-1 / カテゴリ: [linux][command][ssh] / [permlink]
いつもTTSSHやputtyのポートフォワードばかり使って、/usr/bin/ssh でポートフォワードしたことなかったなぁ。
ちなみに、上の ssh プロセス自体は、example.org への通常の ssh アクセスとさほど変わらず。
ssh -L 10025:remote.example.org:25 user@example.orgこれで、ローカルマシンの10025にアクセスすれば、example.org から見た remote.example.org のポート 25 にアクセスできる。
ちなみに、上の ssh プロセス自体は、example.org への通常の ssh アクセスとさほど変わらず。
fetchmail 実行時に、Received ヘッダを追記しない
2005-07-19-1 / カテゴリ: [linux][command][メール] / [permlink]
通常、fetchmail でメールを取り込むと、
このとき、
コマンドラインオプションは --invisible かな。
Received: from mail.example.org [192.168.0.1] by localhost with POP3 (fetchmail-6.2.5) for zaki@localhost (single-drop); Fri, 15 Jul 2005 13:30:04 +0900 (JST)みたいな Received ヘッダが追記される。
このとき、
set invisibleを .fetchmailrc に設定しておけば、このヘッダが追記されなくなる。
コマンドラインオプションは --invisible かな。
--invisible オプション (キーワード: set invisible) は fetchmail を見 えman fetchmail より
なくしようとします。通常、fetchmail は他の MTA と同じように振舞います。
つまり、送信の経路が記述されている Received ヘッダをメッセージ全てに 書
き 込 み、転送先の MTA に、fetchmail そのものが実行されているマシンから
メールが来たことを知らせます。 invisible オプションが有効である場合は、
Received ヘッダは付けられず、fetchmail は転送先の MTA をだまして、メー
ルがメールサーバのホストから直接届いたと思わせようとします。
find で否定条件
2005-07-14-3 / カテゴリ: [unix][linux][command] / [permlink]
! をつける
$ find . ! -name "foobar"foobar 以外を検索
単純な条件付のファイルリスト取得は grep は使わず find のオプションに指定せよ
2005-07-14-2 / カテゴリ: [unix][Solaris][command] / [permlink]
某所にて、こんなコマンドを見た。
Solaris で試したところ、
てーか、grep -v .gz | grep -v "lost+found" って、gzip で圧縮したファイルと、lost+found ディレクトリを除きたいんだろうけど、要件を満たしすぎているぞ>担当者
$ find . -mtime +1 -print |grep -v .gz|grep -v "lost+found"
Solaris で試したところ、
$ find . -mtime +1 ! -name "*.gz" ! -name "lost+found" -printの方が、3倍ほど高速だった。
pts/8:miyazaki@nwmail% time zsh -c 'repeat 100 /usr/bin/find . -mtime +1 -print | grep -v "\.gz" | grep -v "lost+found"' > /dev/null zsh -c > /dev/null 1.11s user 3.15s system 94% cpu 4.522 total pts/8:miyazaki@nwmail% time zsh -c 'repeat 100 /usr/bin/find . -mtime +1 ! -name "*.gz" ! -name "lost+found" -print' > /dev/null zsh -c > /dev/null 0.40s user 1.25s system 95% cpu 1.736 total (ファイル数) pts/8:miyazaki@nwmail% /usr/bin/find . -mtime +1 -print | grep -v "\.gz" | grep -v "lost+found" W -l 34 pts/8:miyazaki@nwmail% /usr/bin/find . -mtime +1 ! -name "*.gz" ! -name "lost+fo und" -print W -l 34 pts/8:miyazaki@nwmail% find . W -l 41
てーか、grep -v .gz | grep -v "lost+found" って、gzip で圧縮したファイルと、lost+found ディレクトリを除きたいんだろうけど、要件を満たしすぎているぞ>担当者
Referrer (Inside):
[2006-02-23-2]
find の and/or オプション
2005-07-14-1 / カテゴリ: [unix][Solaris][command] / [permlink]
Solaris の /usr/bin/find は、GNU findutil の -and/-or はない。
かわりに、-a/-o があるので、こっちを使う。
GNU find も、-and/-or の代わりに -a/-o が使える。こっちで覚えた方がいいかも。
ついでに、-and は省略しても同じ条件になる。
って、マニュアルにかいてあるし^^;;;
関連: [2005-03-02-1]
かわりに、-a/-o があるので、こっちを使う。
GNU find も、-and/-or の代わりに -a/-o が使える。こっちで覚えた方がいいかも。
ついでに、-and は省略しても同じ条件になる。
って、マニュアルにかいてあるし^^;;;
expr1 expr2
And (implied); expr1 が偽の場合は expr2 は評価されない。
expr1 -a expr2
expr1 expr2 と同じ。
expr1 -and expr2
expr1 expr2 と同じ。
関連: [2005-03-02-1]
wget で digest 認証
2005-07-12-1 / カテゴリ: [linux][command] / [permlink]
[2005-07-11-2]と同じ書式で普通にできるっぽい。wget 側で自動判別するのかな?
昨日できなかった理由がわからないけど、環境依存かもしれない。
wget ... GNU Wget 1.9.1
httpd ... Apache/1.3.3 (Debian GNU/Linux)
モジュール(mod_digest)のバージョンはどうやって見るのかな?
昨日できなかった理由がわからないけど、環境依存かもしれない。
wget ... GNU Wget 1.9.1
httpd ... Apache/1.3.3 (Debian GNU/Linux)
モジュール(mod_digest)のバージョンはどうやって見るのかな?
wget で basic 認証
2005-07-11-2 / カテゴリ: [linux][command] / [permlink]
$ wget --http-user=username --http-passwd=password http://www.example.org/ps で見ると引数からパスがバレルので、共用サーバでの使用は控えるべし。
wget の Changelog 見る限り、digest認証にも対応してそうなんだけど、うまくいかない…
Referrer (Inside):
[2005-07-12-1]
ascii文字の正規表現
2005-07-08-2 / カテゴリ: [programming][perl][command][正規表現] / [permlink]
m/[ -~]/0x20(スペース)から0x7e(チルダ)まで。
0x20未満のハードタブ(0x09)や改行(0x0A)は個別に対処せよ。
0x7F(DEL)はいらねーよな。
あぁ、grep でも使える
$ command | grep -v '[ -~]'asciiを含まない行を出力
$ command | grep '[^ -~]'ascii以外を含む行を出力
lv(v.4.50, v.4.51)の正規表現検索は、スペースを範囲に含めると overcrossing range と出力されて効かないので、0x21の!から指定する
/[^ !-~]ascii以外(タブなど除く)を含む行を出力
less(351, 358)は [ -~]で大丈夫なんだけどなぁ。意外にも more も大丈夫だ。
grep(GNU) マッチ行の前後X行も出力(前後セット)
2005-06-27-1 / カテゴリ: [linux][command][grep] / [permlink]
$ grep -C X pattern file もしくは $ grep -X pattern file
追記: -C を -c と間違えて書いていたのを修正(06/29)
くぅ、-A とか -B [2004-11-29-2] より、こっち覚えるのが先じゃねーか。
ただし、このオプションだけつけてもむしろ見難いので、-n とセットのほうが結果が見やすい。
$ grep -nX pattern file マッチ行前後- マッチ行: マッチ行前後-
grep スクリプト(?)
2005-06-13-1 / カテゴリ: [linux][command][grep] / [permlink]
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=21973&forum=10
でも、使い道が…^^;
hmiyazaki@chaource:~/tmp$ cat test.grep #!/usr/bin/grep -ve # hoge foo bar hoge hmiyazaki@chaource:~/tmp$ ./test.grep hoge foo bar hogeこんなこともできたのかー。
でも、使い道が…^^;
MANPATH を一時変更してマニュアルを見る
2005-06-07-4 / カテゴリ: [unix][linux][command] / [permlink]
$ man -M /foo/bar command
でも、alias で
alias man="man -M /usr/share/man -M /usr/local/man" alias manlocal="man -M /usr/local/man -M /usr/share/man"とかにした方がラクそうかも
grep でパターンを含まないファイル名を表示
2005-06-07-3 / カテゴリ: [linux][command][grep] / [permlink]
$ grep -L pattern *Solaris の /bin/usr/grep は NG
ファイル内に1箇所も pattern を含まないファイル名を表示する。
patch ファイルの作り方
2005-06-05-1 / カテゴリ: [linux][unix][command] / [permlink]
(GNU patch 用)
とりあえず、簡単に。(1個のファイルの場合)
あとは、foobar.txt のあるディレクトリに foobar.txt.patch を置いて
とりあえず、簡単に。(1個のファイルの場合)
元のファイル(foobar.txt)がある foobar.txt.org にコピーしておく foobar.txt を修正する % diff -u foobar.txt.org foobar.txt > foobar.txt.patchできあがり。
あとは、foobar.txt のあるディレクトリに foobar.txt.patch を置いて
% patch < patch.txt.patch
パッケージの中身リスト(dpkg -L package)
2005-05-27-2 / カテゴリ: [win][command][cygwin] / [permlink]
$ cygcyeck -l package
telnet コマンドの強制停止
2005-05-19-2 / カテゴリ: [command][network] / [permlink]
telnet 実行中に応答がなくなったとき
> ^]で、telnet プロンプトに切り替わるので
> telnet> quitすれば抜けれる(と良いなぁ)
最終更新時間: 2013-05-02 16:12