リンクメモ
日本語チュートリアル
GUIツールのTortoiseHg
TortoiseHgの日本語Wiki
オラ本のPDFを配布してるとこ
2009年12月26日土曜日
2009年12月24日木曜日
Debian でIPアドレスを固定にする
/etc/network/interfacesを編集する
下みたいになっているのを
↓の様に直す(192.168.0.11)にする場合
直したら
#ifdown eth0
#ifup eth0
でおk
# /etc/init.d/networking restart
でもいけるがその場合は↓を書いておくこと(ifup -aの対象となる)
※VirtualPCではallow-hotplugはコメントアウトしておいた方がよさげ
参考リンク
http://asaasa.tk/wiki/?Debian%2FSettings%2FStaticIP
下みたいになっているのを
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
↓の様に直す(192.168.0.11)にする場合
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 192.168.0.11
netmask 255.255.255.0
gateway 192.168.0.1
直したら
#ifdown eth0
#ifup eth0
でおk
# /etc/init.d/networking restart
でもいけるがその場合は↓を書いておくこと(ifup -aの対象となる)
auto eth0
※VirtualPCではallow-hotplugはコメントアウトしておいた方がよさげ
参考リンク
http://asaasa.tk/wiki/?Debian%2FSettings%2FStaticIP
2009年12月23日水曜日
2009年12月20日日曜日
bashで端末ロック機能を解除する
Ctrl+Sを押すと端末がロックしてしまうのが不便だと感じたら
↓を.bashrcなどに書いておく
参考リンク
http://www.mazn.net/blog/2007/12/17/42.html
↓を.bashrcなどに書いておく
stty stop undef
参考リンク
http://www.mazn.net/blog/2007/12/17/42.html
rep2の過去ログをtmpreaperを使って整理
OpenJaneとかにはDAT落ちしたものを整理(削除)する機能があるけどrep2にはないのでtmpreaperで実装する
やり方はrep2/data直下にあるファイルはお気に入りとかなんで削除しない
それ以外は削除するっていう方法で行う
↓みたいなのをcronとかに保存しておけばいいんじゃないかな
やり方はrep2/data直下にあるファイルはお気に入りとかなんで削除しない
それ以外は削除するっていう方法で行う
↓みたいなのをcronとかに保存しておけばいいんじゃないかな
#!/usr/bin/perl
use strict;
use warnings;
#### Initial Setting ###############
our $DAT_DIR="/var/www/rep2/data";
####################################
chdir ($DAT_DIR) or die $!;
unless ($DAT_DIR=~/\/$/){
$DAT_DIR.="/"; #最後が/で終わってなかったら付け足す
}
opendir (DIR,$DAT_DIR) or die $!;
my @dir=readdir DIR;
my @fdir;
for (@dir){
push (@fdir,$_) if -f $_;
}
closedir DIR;
my $command;
$command = << 'PRE';
nice -n10 tmpreaper --delay=30 --mtime-dir --symlinks 7d \
--showdeleted \
--mtime \
PRE
for (@fdir){
$command.="--protect '$DAT_DIR".$_."' \\\n";
}
$command.=$DAT_DIR.".";
system $command and die $!;
Debian LennyをVirtualPC2007へインストール
試した環境は以下の通り
VirtualPC 6.0.156.0
Debian Lenny 最小のCDイメージ バージョンは5.0.3
↓のサイトとかを参考にするとどうやらインストール時にパラメータを追加しないといけないらしいので
http://hiro-system.blog.ocn.ne.jp/blog/2009/03/debian_lennyvir_5b2e.html
インストール時にquit を取ってから"noreplace-paravirt vga=791 clock=pit"を追加する
(インストール時はまだ日本語配列ではないので=イコールのタイプには注意する)
参考リンクには/boot/grub/menu.lstを編集、update-grubするようなことが書いてあるけどなんかインストール時に指定したパラメータが有効になって既にmenu.lstに反映されていたので省く。あとGUIも使わないのでそこら辺も無視した。
参考リンク
Debian Wiki
VirtualPC 6.0.156.0
Debian Lenny 最小のCDイメージ バージョンは5.0.3
↓のサイトとかを参考にするとどうやらインストール時にパラメータを追加しないといけないらしいので
http://hiro-system.blog.ocn.ne.jp/blog/2009/03/debian_lennyvir_5b2e.html
インストール時にquit を取ってから"noreplace-paravirt vga=791 clock=pit"を追加する
(インストール時はまだ日本語配列ではないので=イコールのタイプには注意する)
参考リンクには/boot/grub/menu.lstを編集、update-grubするようなことが書いてあるけどなんかインストール時に指定したパラメータが有効になって既にmenu.lstに反映されていたので省く。あとGUIも使わないのでそこら辺も無視した。
参考リンク
Debian Wiki
2009年12月13日日曜日
2009年12月12日土曜日
携帯でrep2見てるときに外部リンクを通勤ブラウザ以外に設定する
通勤ブラウザは重いしイマイチ使い勝手が良くなかったのでGoogleのGWT(Google Wireless Transcoder)を使う
rep2/lib/ShowThreadK.php を編集すればおk
650行目あたりの
あとpic.toも画像変換に悉く失敗するので
携帯閲覧時、画像リンクにpic.to(ピ)を利用を「しない」にしておいた
(こうすれば外部リンクはここで指定したURLを使う)
rep2/lib/ShowThreadK.php を編集すればおk
650行目あたりの
// 通勤ブラウザ↑を↓の様に変更
if ($_conf['k_use_tsukin']) {
$tsukin_url = 'http://www.sjk.co.jp/c/w.exe?y=' . urlencode($url);
if ($_conf['through_ime']) {
$tsukin_url = P2Util::throughIme($tsukin_url);
}
$ext_pre_hts[] = '<a href="' . hs($tsukin_url) . '">通</a>';
}
// 通勤ブラウザ
if ($_conf['k_use_tsukin']) {
// $tsukin_url = 'http://www.sjk.co.jp/c/w.exe?y=' . urlencode($url);
$tsukin_url = 'http://www.google.co.jp/gwt/x?u=' . urlencode($url);
if ($_conf['through_ime']) {
$tsukin_url = P2Util::throughIme($tsukin_url);
}
// $ext_pre_hts[] = '<a href="' . hs($tsukin_url) . '">通</a>';
$ext_pre_hts[] = '<a href="' . hs($tsukin_url) . '">G</a>';
}
あとpic.toも画像変換に悉く失敗するので
携帯閲覧時、画像リンクにpic.to(ピ)を利用を「しない」にしておいた
(こうすれば外部リンクはここで指定したURLを使う)
2009年12月6日日曜日
メールをCUIで読むソフト mutt
インストールはDebian Lennyならaptitudeで簡単に入る
そんで使い方
基本的な使い方とかはこことか見れば大体分かる
Maildirを指定して
メールボックスとかは一々指定するのは面倒なので~/.muttrcを作成して
設定ファイルを書けば以降はmuttのみで起動できる
mutt操作方法
PageUpとPageDownで次とか後のメールを選択(vim風にjkでもできるけど削除が選択できない)
?でヘルプ
mで新規メール作成
参考リンク
http://www.emaillab.org/mutt/whatis.html
そんで使い方
基本的な使い方とかはこことか見れば大体分かる
Maildirを指定して
mutt -f ~/Maildirこれでとりあえず見れる
メールボックスとかは一々指定するのは面倒なので~/.muttrcを作成して
set folder="~/Maildir"↑みたいなのを書いておく意味はここら辺を見るとわかるかも
set spoolfile="~/Maildir"
set keep_flagged=yes
set mbox=""
set postponed="/tmp/postponed"
set sort="reverse-date-received"
設定ファイルを書けば以降はmuttのみで起動できる
mutt操作方法
PageUpとPageDownで次とか後のメールを選択(vim風にjkでもできるけど削除が選択できない)
?でヘルプ
mで新規メール作成
参考リンク
http://www.emaillab.org/mutt/whatis.html
DovecotのTrashフォルダはどこにあるのか?
それぞれ~/Maildirの中のドットファイルでしたls -aしたら見つかります
/Maildir/.Sent
/Maildir/.Trash
/Maildir/.Drafts
/Maildir/.Junk
/Maildir/.Sent
/Maildir/.Trash
/Maildir/.Drafts
/Maildir/.Junk
Windowsのコマンドプロンプト(DOS窓)でディレクトリ削除
ディレクトリごと再帰的に削除するには
rmdirコマンドを使います
UNIXでいうところのrm -rみたいな
参考リンク
http://sonic64.com/2006-04-05.html
rmdirコマンドを使います
UNIXでいうところのrm -rみたいな
rmdir /S /Q hogedir
参考リンク
http://sonic64.com/2006-04-05.html
Windowsのコマンドプロンプト(DOS窓)でディレクトリコピー
フォルダの再帰的なコピーには
xcopyを使いましょう
xcopy /?で詳しくみれます
例)E:ppmというディレクトリを再帰的に全部コピー
参考リンク
http://www5.ocn.ne.jp/~m-shin/windows/windows-bat-xcopy.html
xcopyを使いましょう
xcopy /?で詳しくみれます
例)E:ppmというディレクトリを再帰的に全部コピー
xcopy /E /I /Y E:\ppm D:\ppm_backup\ppm2
参考リンク
http://www5.ocn.ne.jp/~m-shin/windows/windows-bat-xcopy.html
perlモジュールを作るための雛形を作る h2xs コマンド
↓みたいな感じで雛形を作る
参考リンク
http://torus.jp/memo/x200311/PerlModule.rd.html
モジュールの最後にPODも追加してくれて便利
__END__
# Below is stub documentation for your module. You'd better edit it!
=head1 NAME
HogeModule - Perl extension for blah blah blah
=head1 SYNOPSIS
use HogeModule;
blah blah blah
=head1 DESCRIPTION
Stub documentation for Okyama, created by h2xs. It looks like the
author of the extension was negligent enough to leave the stub
unedited.
Blah blah blah.
=head2 EXPORT
None by default.
=head1 SEE ALSO
Mention other useful documentation such as the documentation of
related modules or operating system documentation (such as man pages
in UNIX), or any relevant external documentation such as RFCs or
standards.
If you have a mailing list set up for your module, mention it here.
If you have a web site set up for your module, mention it here.
=head1 AUTHOR
hogeuser, Ehogeuser@E
=head1 COPYRIGHT AND LICENSE
Copyright (C) 2009 by hogeuser
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.10.0 or,
at your option, any later version of Perl 5 you may have available.
=cut
h2xs -X -A HogeModule
参考リンク
http://torus.jp/memo/x200311/PerlModule.rd.html
モジュールの最後にPODも追加してくれて便利
__END__
# Below is stub documentation for your module. You'd better edit it!
=head1 NAME
HogeModule - Perl extension for blah blah blah
=head1 SYNOPSIS
use HogeModule;
blah blah blah
=head1 DESCRIPTION
Stub documentation for Okyama, created by h2xs. It looks like the
author of the extension was negligent enough to leave the stub
unedited.
Blah blah blah.
=head2 EXPORT
None by default.
=head1 SEE ALSO
Mention other useful documentation such as the documentation of
related modules or operating system documentation (such as man pages
in UNIX), or any relevant external documentation such as RFCs or
standards.
If you have a mailing list set up for your module, mention it here.
If you have a web site set up for your module, mention it here.
=head1 AUTHOR
hogeuser, E
=head1 COPYRIGHT AND LICENSE
Copyright (C) 2009 by hogeuser
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.10.0 or,
at your option, any later version of Perl 5 you may have available.
=cut
2009年12月5日土曜日
定期的に/tmpを掃除してくれるソフトtmpreaper
Debian Lennyで試した。
Red hat系だとtmpwatchとかあるみたいだけど無いのでこれを使う
まずはaptitudeでインストール
インストールすると/etc/cron.daily/tmpreaperが作成される
これによって毎日cronで実行される
設定はこれをいじってもできるが基本的には
/etc/tmpreaper.confをいじる
まずはワーニングが出るので13行目あたりにあるSHOWWARNINGをコメント化する
次にオプションを設定する各オプションの意味は以下の通り
TMPREAPER_TIME・・・どのくらいアクセスがないファイルを削除するか?設定値はデフォルトで7dつまり7d以上アクセスがないと削除
TMPREAPER_PROTECT_EXTRA・・・削除しては駄目な名前を指定
TMPREAPER_DIRS・・・削除の対象とするディレクトリ デフォルトは/tmpのみ 複数指定するときはスペースで区切る 例)TMPREAPER_DIRS='/tmp/. /var/tmp/.'
TMPREAPER_DELAY・・・実行するまで待つ時間 デフォルトは256秒
TMPREAPER_ADDITIONALOPTIONS・・・他に指定したいオプションがある場合はこここに入れる他のオプションはmanを参照
あと/etc/cron.daily/tmpreaper見れば分かるけど
デフォルトで
以下のオプションが設定されている。ヤバイファイルは消えないようにしているようだ
Red hat系だとtmpwatchとかあるみたいだけど無いのでこれを使う
まずはaptitudeでインストール
インストールすると/etc/cron.daily/tmpreaperが作成される
これによって毎日cronで実行される
設定はこれをいじってもできるが基本的には
/etc/tmpreaper.confをいじる
まずはワーニングが出るので13行目あたりにあるSHOWWARNINGをコメント化する
#SHOWWARNING=true
次にオプションを設定する各オプションの意味は以下の通り
TMPREAPER_TIME・・・どのくらいアクセスがないファイルを削除するか?設定値はデフォルトで7dつまり7d以上アクセスがないと削除
TMPREAPER_PROTECT_EXTRA・・・削除しては駄目な名前を指定
TMPREAPER_DIRS・・・削除の対象とするディレクトリ デフォルトは/tmpのみ 複数指定するときはスペースで区切る 例)TMPREAPER_DIRS='/tmp/. /var/tmp/.'
TMPREAPER_DELAY・・・実行するまで待つ時間 デフォルトは256秒
TMPREAPER_ADDITIONALOPTIONS・・・他に指定したいオプションがある場合はこここに入れる他のオプションはmanを参照
あと/etc/cron.daily/tmpreaper見れば分かるけど
デフォルトで
以下のオプションが設定されている。ヤバイファイルは消えないようにしているようだ
--protect '/tmp/.X*-{lock,unix,unix/*}' \
--protect '/tmp/.ICE-{unix,unix/*}' \
--protect '/tmp/.iroha_{unix,unix/*}' \
--protect '/tmp/.ki2-{unix,unix/*}' \
--protect '/tmp/lost+found' \
--protect '/tmp/journal.dat' \
--protect '/tmp/quota.{user,group}' \
※注意
デフォルトのシェルだと--ctimeが設定されています↓みたいに
いつまで経っても削除されません。(ctimeオプションはatime+ctimeのチェックをします)
用途によってはここを--mtimeに変更してもいいと思います
nice -n10 tmpreaper --delay=$TMPREAPER_DELAY --mtime-dir --symlinks $TMPREAPER_TIME \これだとcronでlocateのDBを作っているので、アクセスタイムが更新され
$TMPREAPER_ADDITIONALOPTIONS \
--ctime \
いつまで経っても削除されません。(ctimeオプションはatime+ctimeのチェックをします)
用途によってはここを--mtimeに変更してもいいと思います
postfixでOP25B対策
OP25Bを実施しているISPの場合、25番ポートへの出力が制限されているからリレーしてもらうように設定する
/etc/postfix/main.cfを編集 (hoge.ne.jpがSMPTサーバーだとする)
ispauthはユーザー名とパスワードを書くファイル名前はなんでもOK
そんで以下のコマンド投入
chmod 640 /etc/postfix/ispauth
postmap /etc/postfix/ispauth
/etc/rc.d/init.d/postfix restart
参考リンク
http://centos.server-manual.com/postfix_op25b.html
smtp_sasl_mechanism_filterはそのSMPTサーバーが使っているものにあわせるのでそれを確認する
250-AUTH CRAM-MD5 PLAIN LOGIN
参考リンク
http://www.aconus.com/~oyaji/mail2/op25b.htm
どうしても出来なかったら↓みたいな感じでパケットキャプチャー→Wiresharkで見て考える感じで
/etc/postfix/main.cfを編集 (hoge.ne.jpがSMPTサーバーだとする)
ispauthはユーザー名とパスワードを書くファイル名前はなんでもOK
relayhost = [hoge.ne.jp]:587ispauthには以下のようなものを書く
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/ispauth
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = cram-md5,login,plain
[プロバイダのSMTPサーバー]:587 プロバイダのユーザーID:プロバイダのパスワードサーバーがhoge.ne.jp、ログインIDがfoobar、パスワードがbuzzだった場合は以下のように書く
[hoge.ne.jp]:587 foobar:buzz
そんで以下のコマンド投入
chmod 640 /etc/postfix/ispauth
postmap /etc/postfix/ispauth
/etc/rc.d/init.d/postfix restart
参考リンク
http://centos.server-manual.com/postfix_op25b.html
smtp_sasl_mechanism_filterはそのSMPTサーバーが使っているものにあわせるのでそれを確認する
telnet hoge.ne.jp 587↓みたいなのが出たら↑の設定でOK
EHLO hoge.ne.jp
250-AUTH CRAM-MD5 PLAIN LOGIN
参考リンク
http://www.aconus.com/~oyaji/mail2/op25b.htm
※注意 SMTP認証を使う場合はlibsasl2-modulesがインストールされていることを確認してください
どうしても出来なかったら↓みたいな感じでパケットキャプチャー→Wiresharkで見て考える感じで
tcpdump -s 1500 ip host ?.?.?.? -w out.cap
2009年12月1日火曜日
dovecotでQuota設定
メールの容量を制限する(クォータの設定)するには?
Plugin settingsの部分に以下を追記
↓がグローバルなクォータ設定(ユーザー個別に設定すればそちらが優先される)
参考リンク→http://wiki.dovecot.org/Quota/1.0
上記の設定後
protocol imapに次の文を追記
参考リンク→http://wiki.dovecot.org/Quota/1.0
Thunderbirdで試すとクォータが有効なら↓のようなメッセージが出る
で、クォータ当てただけじゃ不便だから古いメッセージから自動で削除してくれるように設定するにはTrashプラグインを使う
さっき指定したdovecot-trash.conf (無ければ作る) を編集する
↓はTrashだけ削除の対象とする例
Plugin settingsの部分に以下を追記
↓がグローバルなクォータ設定(ユーザー個別に設定すればそちらが優先される)
参考リンク→http://wiki.dovecot.org/Quota/1.0
plugin {
quota = maildir:storage=10240:messages=1000
}
上記の設定後
protocol imapに次の文を追記
参考リンク→http://wiki.dovecot.org/Quota/1.0
protocol imap {
mail_plugins = quota imap_quota
}
Thunderbirdで試すとクォータが有効なら↓のようなメッセージが出る
で、クォータ当てただけじゃ不便だから古いメッセージから自動で削除してくれるように設定するにはTrashプラグインを使う
protocol imap {
mail_plugins = quota imap_quota trash
}
plugin {
quota = maildir:storage=10240:messages=1000
trash = trash = /etc/dovecot/dovecot-trash.conf
}
さっき指定したdovecot-trash.conf (無ければ作る) を編集する
↓はTrashだけ削除の対象とする例
1 Trash↑のファイルを1行つくればOK
2009年11月30日月曜日
Windowsのソースコードのステップ数(目安)
こんな感じらしい
Windows NT⇒400万行http://blog.development-network.net/ung/2006/10/post_54.html
Windows 95⇒1,500万行
Windows XP⇒3,500万行
Windows Vista⇒5,000万行
2009年11月28日土曜日
2009年11月23日月曜日
vim7の新機能omni補完について
インサートモードでCtrl+X Ctrl+Oでomni補完が出来るらしい
omnifuncってところで設定してるみたいだけどこれはファイルタイププラグイン呼ばれた時に設定されるらしいからあえてautocmdで呼ぶ必要もないみたい・・・
とりあえず今はサポートは以下の言語しかないみたい
:h new-omni-completion
とりあえず参考リンク
http://kaede.to/~canada/doc/vimeperlephpinoadhie
http://amix.dk/blog/viewEntry/19021
omnifuncってところで設定してるみたいだけどこれはファイルタイププラグイン呼ばれた時に設定されるらしいからあえてautocmdで呼ぶ必要もないみたい・・・
とりあえず今はサポートは以下の言語しかないみたい
Cヘルプは以下のコマンドでどうぞ
(X)HTML with CSS
JavaScript
PHP
Python
Ruby
SQL
XML
:h new-omni-completion
とりあえず参考リンク
http://kaede.to/~canada/doc/vimeperlephpinoadhie
http://amix.dk/blog/viewEntry/19021
IMAPを使ってメールを送受信するときOutlookとThunderbirdで使用フォルダが違う
IMAPで送受信するとそれが違う風になってしまう
使用しているフォルダは下の設定画面の購読するフォルダを管理するから確認できる
↓がその画面
Thunderbird以外のメーラーで不要なディレクトリができてしまった場合は
最初の画面から不要なフォルダを右クリック→削除で削除できる
使用しているフォルダは下の設定画面の購読するフォルダを管理するから確認できる
↓がその画面
Thunderbird以外のメーラーで不要なディレクトリができてしまった場合は
最初の画面から不要なフォルダを右クリック→削除で削除できる
2009年11月22日日曜日
perlでWindows内のファイル属性の変更
使用方法はこんな感じで
GetAttributes
SetAttributes
使える値は↓みたいなのがあるらしい(下はデフォルトでExport)
ARCHIVE
COMPRESSED
DIRECTORY
HIDDEN
NORMAL
OFFLINE
READONLY
SYSTEM
TEMPORARY
以下参考リンク
CPAN
http://search.cpan.org/~jdb/Win32-File-0.06/File.pm
紹介Blog
http://memo.freedom-lite.com/?p=187
#!/usr/bin/perl使える関数は以下の通り
use Win32::File;
Win32::File::SetAttributes("hoge.txt",READONLY);
GetAttributes
SetAttributes
使える値は↓みたいなのがあるらしい(下はデフォルトでExport)
ARCHIVE
COMPRESSED
DIRECTORY
HIDDEN
NORMAL
OFFLINE
READONLY
SYSTEM
TEMPORARY
以下参考リンク
CPAN
http://search.cpan.org/~jdb/Win32-File-0.06/File.pm
紹介Blog
http://memo.freedom-lite.com/?p=187
スーパーマリオ63?っていうFLASHゲーム
これはすごいと思った
音楽とかはスーパーマリオ64のまんま
Super Mario63
http://www.freeworldgroup.com/games8/gameindex/supermario.htm
音楽とかはスーパーマリオ64のまんま
Super Mario63
http://www.freeworldgroup.com/games8/gameindex/supermario.htm
2009年11月19日木曜日
2009年11月18日水曜日
2009年11月15日日曜日
Google検索のイースターエッグ
Answer to Life the Universe and Everything
で検索すると42と出てくる以外の奴があった
http://www.adlize.com/blog/archives/246
で検索すると42と出てくる以外の奴があった
http://www.adlize.com/blog/archives/246
2009年11月11日水曜日
起動するデーモンの調整 sysv-rc-conf
sysv-rc-confというパッケージを使えば
起動するデーモンのON/OFF切り替えがGUIで可能です
perlのライブラリに依存しているようです・・・
Debian Lennyで試した
起動するデーモンのON/OFF切り替えがGUIで可能です
perlのライブラリに依存しているようです・・・
Debian Lennyで試した
2009年11月4日水曜日
2009年11月3日火曜日
2009年10月29日木曜日
2009年10月24日土曜日
今日見つけた便利なソフト
CLISM
クリップボードの履歴機能を追加(つーかそれだけ。シンプルで良い)
http://ringonoki.net/tool/clip/cli.php
MDIE
タブ型ファイラー
http://cres.s28.xrea.com/soft/mdie.html
クリップボードの履歴機能を追加(つーかそれだけ。シンプルで良い)
http://ringonoki.net/tool/clip/cli.php
MDIE
タブ型ファイラー
http://cres.s28.xrea.com/soft/mdie.html
2009年10月23日金曜日
2009年10月18日日曜日
vsftpdをinetd経由で動かす
なんかネット探してもみんなxinetdで動かしてるからinetdでの動かし方をメモ
1./etc/vsftpd.confを以下のように変更
2./etc/inetd.confに以下の記述を追加 ※<args>の項は不要みたい
3.下記コマンドでinetdを再起動
あと最近はxinetdの方が主流みたいなので次はxinetdでやろうかな・・・
xinetdは単体でinetd + TCP wrapper(tcpd)の機能を持っているそうです
http://www.aconus.com/~oyaji/suse/vsftpd_suse.htm
http://www.express.nec.co.jp/linux/distributions/knowledge/network/xinetd.html
1./etc/vsftpd.confを以下のように変更
listen=NO
2./etc/inetd.confに以下の記述を追加 ※<args>の項は不要みたい
ftp stream tcp nowait root /usr/sbin/vsftpd
3.下記コマンドでinetdを再起動
/etc/init.d/openbsd-inetd restart
再起動/起動スクリプトの名前はopenbsd-inetdなので注意 前も書いたかも
あと最近はxinetdの方が主流みたいなので次はxinetdでやろうかな・・・
xinetdは単体でinetd + TCP wrapper(tcpd)の機能を持っているそうです
http://www.aconus.com/~oyaji/suse/vsftpd_suse.htm
http://www.express.nec.co.jp/linux/distributions/knowledge/network/xinetd.html
motdとmotd.tailの関係について(Debian Lenny)
/etc/motdは/var/run/motdへのシンボリックリンクです。
システムのboot時に/etc/init.d/bootmisc.shによって
つまり、再起動後も有効にしたい場合は/etc/motd.tailを直しましょう
http://www.debian.org/releases/etch/hppa/release-notes/ch-information.ja.html
システムのboot時に/etc/init.d/bootmisc.shによって
uname -snrvm > /var/run/motdと、上書きされます。
[ -f /etc/motd.tail ] && cat /etc/motd.tail >> /var/run/motd
つまり、再起動後も有効にしたい場合は/etc/motd.tailを直しましょう
http://www.debian.org/releases/etch/hppa/release-notes/ch-information.ja.html
2009年10月17日土曜日
/etc/crontabを修正したらcronデーモンの再起動は必要なの?
必要ないそうです。
http://www.linux.or.jp/JM/html/cron/man8/cron.8.html
さらに cron は 1 分ごとにスプールディレクトリ(または /etc/crontab ファイル)の最終修正時刻(modtime)をチェックし、もし変更されていれば、すべての crontab ファイルの最終修正時刻をチェックし、変更された crontab ファイルを読み直す。よって crontab ファイルを修正するたびに cron を再起動する必要はない。 crontab(1) コマンドは、crontab ファイルが変更されたかどうかにかかわらず、スプールディレクトリの最終修正時刻を更新することに注意せよ。
http://www.linux.or.jp/JM/html/cron/man8/cron.8.html
既定のプログラムを設定するupdate-alternativesコマンド
例えばデフォルトのエディターを指定するには
update-alternatives --config editor
って打ってリストから選択すればいいだけ
参考リンク
http://axela5004.blog74.fc2.com/blog-entry-298.html
update-alternatives --config editor
って打ってリストから選択すればいいだけ
参考リンク
http://axela5004.blog74.fc2.com/blog-entry-298.html
2009年10月12日月曜日
sambaでゴミ箱を設定する
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/734recycle3.html
↑を見ればだいたい分かるけど
↑みたいに追加すればOK
後はゴミ箱のパーミッションを777にする
でも自動的に削除されないので・・・
削除できるようにする必要がある
cronとかに適当に↓とか登録しとけばいいんじゃないかな
↑を見ればだいたい分かるけど
[global]※hide filesは隠しフォルダにするオプション
vfs objects = recycle
[hoge]
recycle:repository = /var/samba/gomibako/
recycle:keeptree = yes
recycle:touch = yes
recycle:versions = yes
recycle:maxsize = 0
hide files = /var/samba/gomibako/
↑みたいに追加すればOK
後はゴミ箱のパーミッションを777にする
でも自動的に削除されないので・・・
削除できるようにする必要がある
cronとかに適当に↓とか登録しとけばいいんじゃないかな
#!/usr/bin/perl
use strict;
use warnings;
use feature qw(say);
#### Initial Setting #######################
our $gomibako_dir="/var/samba/gomibako/";
############################################
say "--- REMOVE GOMIBAKO (DIR = $gomibako_dir) ---";
chdir "/var/samba/gomibako/" or die $!;
system "du -cah $gomibako_dir";
system "rm -rf *" and die $!;
2009年10月11日日曜日
perlの難読化ツール2 ppencode
前回の投稿では記号だけで表すってモジュールを紹介したけど、予約語だけでプログラミングってのもある
ソースとか説明は↓
http://namazu.org/~takesako/ppencode/
JavaScriptによるデモは↓
http://www.namazu.org/~takesako/ppencode/demo.html
動作原理についての説明は↓
http://d.hatena.ne.jp/masutaro/20080128/1201507016
ソースとか説明は↓
http://namazu.org/~takesako/ppencode/
JavaScriptによるデモは↓
http://www.namazu.org/~takesako/ppencode/demo.html
動作原理についての説明は↓
http://d.hatena.ne.jp/masutaro/20080128/1201507016
perlの難読化モジュールAcme::EyeDrops
perlは記号だけでプログラミングが可能です。どうやるかはevalと論理演算を駆使すればできるらしい・・・
例えば・・・
「H」という文字列を作りたい場合は
`←バッククォート 16進数では60
(←括弧 16進数では28
をXORですると・・・
16進数の48になります。。。
こんな感じでプログラミングしていくみたいです
参考記事
http://d.hatena.ne.jp/shinichiro_h/20061107
そんで、本題Acme::EyeDropsについて
これは上記のテクニックを使ってプログラムを難読化してくれるモジュールみたい
さっそく試す
1.ActivePerlならPPMでAcme-EyeDropsを検索してインストール
2.適当にperlソースを書く(ここではhoge.plとする)
3.以下のようにして吐き出させる
詳しくはこちら
好きなShapeは
map_japan
map_world3
mongers
music
writing_perl
tpr
camel
あたり
例えば・・・
「H」という文字列を作りたい場合は
`←バッククォート 16進数では60
(←括弧 16進数では28
をXORですると・・・
16進数の48になります。。。
こんな感じでプログラミングしていくみたいです
print "`" ^ "(","\n";↑をやればHと表示されるはず
参考記事
http://d.hatena.ne.jp/shinichiro_h/20061107
そんで、本題Acme::EyeDropsについて
これは上記のテクニックを使ってプログラムを難読化してくれるモジュールみたい
さっそく試す
1.ActivePerlならPPMでAcme-EyeDropsを検索してインストール
2.適当にperlソースを書く(ここではhoge.plとする)
3.以下のようにして吐き出させる
#!/usr/bin/perlこのモジュールのすごいところはバイナリファイルだってAA化できちゃうってこと
use Acme::EyeDrops qw(sightly);
print sightly( { Shape => 'camel',
SourceFile => 'hoge.pl' ,
Compact => 1
} );
詳しくはこちら
好きなShapeは
map_japan
map_world3
mongers
music
writing_perl
tpr
camel
あたり
2009年10月10日土曜日
2009年10月7日水曜日
2009年10月3日土曜日
アニソンに合わせてタイピング練習するゲーム
タイピングマニア
http://www10.atpages.jp/mania/
http://sonbura.hp.infoseek.co.jp/self/typingmania4.html
追記
どうやらこれは自分で作るタイプのFLASHゲームだそうです。。。
以下参考リンク
公式サイト
TYPINGMANIA Wiki
タイピングマニアまとめサイト
http://www10.atpages.jp/mania/
http://sonbura.hp.infoseek.co.jp/self/typingmania4.html
追記
どうやらこれは自分で作るタイプのFLASHゲームだそうです。。。
以下参考リンク
公式サイト
TYPINGMANIA Wiki
タイピングマニアまとめサイト
2009年9月27日日曜日
2chのスレ中にどのレスが一番アンカーが付けられたか検索する
こんな感じでどうでしょうか?
単純に>>1をgrepすると>>10や>>100も引っかかることに注意
#!/usr/bin/perl
use feature qw(say);
open (FH,"input.txt") or die $!;
@list=<FH>;
close FH;
@list = grep {/\>\>\d+/} @list;
for (1..1000){
$num=$_;
$num='>>'.$num;
$coun{$num} = grep {/\>\>\d+/ and ($num eq $&)} @list;
}
for (sort {$coun{$b} <=> $coun{$a}} keys %coun){
printf ("%-5s => %03d\n",$_,$coun{$_});
last if $i++>=10;
}
単純に>>1をgrepすると>>10や>>100も引っかかることに注意
#!/usr/bin/perl
use feature qw(say);
open (FH,"input.txt") or die $!;
@list=<FH>;
close FH;
@list = grep {/\>\>\d+/} @list;
for (1..1000){
$num=$_;
$num='>>'.$num;
$coun{$num} = grep {/\>\>\d+/ and ($num eq $&)} @list;
}
for (sort {$coun{$b} <=> $coun{$a}} keys %coun){
printf ("%-5s => %03d\n",$_,$coun{$_});
last if $i++>=10;
}
2009年9月26日土曜日
rep2 機能拡張パックをLinux(Debian)にインストール
インストールはrep2と同じ
違うとところは「PEAR 詰め合わせ」を入れるくらい
やり方は↓
その他 拡張版でのはまり所は↓
・AASを使うにはそれだけ有効にしても意味が無い アクティブモナーも有効にすること
有効にする箇所は以下のとおり(行の順番は適当)
/var/www/rep2ex/conf/conf_admin_ex.inc.php
(多分、/usr/share/fonts/truetype/mona/mona.ttfにあるんじゃないかな・・・)
※あとphp5-gdにはImageRotateが定義されていません詳細は以下
なので90度回転が使えないません
http://dev.satake7.net/blog/2009/04/23/194/
http://d.hatena.ne.jp/rudeboyjet/20081007/p1
公式サイト
http://page2.xrea.jp/expack/
違うとところは「PEAR 詰め合わせ」を入れるくらい
やり方は↓
pear フォルダの中にある includes フォルダを rep2 フォルダに置く。詳細なインストール方法はココを参照すれば分かる
その他 拡張版でのはまり所は↓
・AASを使うにはそれだけ有効にしても意味が無い アクティブモナーも有効にすること
有効にする箇所は以下のとおり(行の順番は適当)
/var/www/rep2ex/conf/conf_admin_ex.inc.php
// AAS による AA プレビュー(off:0, on:1)あとDebianのaptitudeかなんあでmonaを検索 以下パッケージをインストール
$_conf['expack.editor.with_aas'] = 1; // (0)
// AAS(off:0, on:1)
$_conf['expack.aas.enabled'] = 1; // (0)
// {{{ アクティブモナー
// AA 補正(off:0, on:1)
$_conf['expack.am.enabled'] = 1; // (0)
// }}}
// {{{ 入力支援
// ActiveMona による AA プレビュー(off:0, on:1)
$_conf['expack.editor.with_activemona'] = 1; // (0)
// AAS による AA プレビュー(off:0, on:1)
$_conf['expack.editor.with_aas'] = 1; // (0)
ttf-monaそしたら/var/www/rep2ex/conf/conf_admin_ex.inc.phpの以下のように修正
xfonts-mona
//TrueTypeフォントのパス
$_conf['expack.aas.font_path'] = "/usr/share/fonts/truetype/mona/mona.ttf"; // ("./ttf/mona.ttf")
//$_conf['expack.aas.font_path'] = "./ttf/ipagp-mona.ttf";
(多分、/usr/share/fonts/truetype/mona/mona.ttfにあるんじゃないかな・・・)
※あとphp5-gdにはImageRotateが定義されていません詳細は以下
なので90度回転が使えないません
http://dev.satake7.net/blog/2009/04/23/194/
http://d.hatena.ne.jp/rudeboyjet/20081007/p1
公式サイト
http://page2.xrea.jp/expack/
ライフルで狙撃するゲーム
FLASHゲーム マテリアルスナイパー
http://nextframe.jp/flash/matsnp/matsnp.html
ザイーガ紹介記事
http://www.zaeega.com/archives/50885912.html
http://nextframe.jp/flash/matsnp/matsnp.html
ザイーガ紹介記事
http://www.zaeega.com/archives/50885912.html
2009年9月9日水曜日
2009年9月7日月曜日
2009年9月6日日曜日
2009年9月5日土曜日
2009年8月30日日曜日
2009年8月29日土曜日
2009年8月23日日曜日
Firefoxでタブのフォーカスを制御
リンクを中クリックで開いた時にフォーカスを移すかどうかの設定
browser.tabs.loadInBackground
これをボタンで切り替えてくれる拡張ないかなぁ・・・
browser.tabs.loadInBackground
これをボタンで切り替えてくれる拡張ないかなぁ・・・
Firefox3.5にしたら最後のタブを閉じた時の挙動が変わった
前までは最後のタブを閉じてもウィンドウ自体は閉じられなかったのに、3.5にしてから閉じるようになってしまったようだ・・・
直し方は
about:config→browser.tabs.closeWindowWithLastTabの値をFalseに設定すればおk
あと設定したのはタブの閉じるボタンを非表示にする設定↓
browser.tabs.closeButtonsを2にする
参考サイト
http://d.hatena.ne.jp/takayukis/20090707/1246973796
3.5の新機能
http://mozilla-remix.seesaa.net/article/122559921.html
目玉の位置情報
http://mozilla.jp/firefox/features/geolocation/
直し方は
about:config→browser.tabs.closeWindowWithLastTabの値をFalseに設定すればおk
あと設定したのはタブの閉じるボタンを非表示にする設定↓
browser.tabs.closeButtonsを2にする
参考サイト
http://d.hatena.ne.jp/takayukis/20090707/1246973796
3.5の新機能
http://mozilla-remix.seesaa.net/article/122559921.html
目玉の位置情報
http://mozilla.jp/firefox/features/geolocation/
2009年8月22日土曜日
2009年8月16日日曜日
いろいろなフォーマットの動画をいろいろ変換するソフト
Pazera Video Converters Suite 1.2
ってやつです
http://www.pazera-software.com/
参考リンク
http://www.forest.impress.co.jp/article/2008/02/15/pazeravideo2flash.html
ってやつです
http://www.pazera-software.com/
参考リンク
http://www.forest.impress.co.jp/article/2008/02/15/pazeravideo2flash.html
2009年8月2日日曜日
2009年7月25日土曜日
2009年7月24日金曜日
2009年7月21日火曜日
2009年7月13日月曜日
2009年7月12日日曜日
Personas for Firefoxのペルソナ(テーマ)を自作してみる
↓に書いてあった
http://people.mozilla.com/~cbeard/personas/designers/
ヘッダー画像(横3000px、縦200px)
フッター画像(横3000px、縦100px)
ならなんでもいいみたい
試しにけいおんのヘッダー画像作ってみた
参考リンク
窓の杜記事
http://people.mozilla.com/~cbeard/personas/designers/
ヘッダー画像(横3000px、縦200px)
フッター画像(横3000px、縦100px)
ならなんでもいいみたい
試しにけいおんのヘッダー画像作ってみた
参考リンク
窓の杜記事
2009年7月11日土曜日
2009年7月5日日曜日
2009年7月4日土曜日
2009年6月21日日曜日
Mozilla Firefoxがやってる新サービスコレクションを試した
前回のコレクションを試してみた。
コレクションの作成はアドオンコレクターという拡張で自動同期、自動作成みたいなのが出来るらしいが、日本語に対応していないためリンク先が英語版Mozillaになるのでやめて手動で作った。
https://addons.mozilla.org/ja/firefox/collection/6c3bd701-a85e-0ab0-45de-1a484a974cac?sortby=name
↑のアドオン集に含まれてないものとして
ニコニコ動画ダウンローダーがある
コレクションの作成はアドオンコレクターという拡張で自動同期、自動作成みたいなのが出来るらしいが、日本語に対応していないためリンク先が英語版Mozillaになるのでやめて手動で作った。
https://addons.mozilla.org/ja/firefox/collection/6c3bd701-a85e-0ab0-45de-1a484a974cac?sortby=name
↑のアドオン集に含まれてないものとして
ニコニコ動画ダウンローダーがある
2009年6月20日土曜日
PerlのIDEで有名なもの
* EPIC
* PerlBuilder
* PerlComposer
* Perl Editor
* Perl Express
* Open Perl IDE
* OptiPerl
* Zeus
Perl ExpressはApacheとの連携とか出来て良い感じだった。
日本語回りは駄目だが・・・
http://japan.zdnet.com/news/devsys/story/0,2000056182,20361311,00.htm
* PerlBuilder
* PerlComposer
* Perl Editor
* Perl Express
* Open Perl IDE
* OptiPerl
* Zeus
Perl ExpressはApacheとの連携とか出来て良い感じだった。
日本語回りは駄目だが・・・
http://japan.zdnet.com/news/devsys/story/0,2000056182,20361311,00.htm
2009年6月17日水曜日
2009年6月16日火曜日
2009年6月15日月曜日
perlのourについて
ちょっとあやふやにしてる部分があったのでメモ
1.ourを使うとそのレキシカルスコープ内では完全修飾を
しなくてもアクセス可能(use strict時の話ね)
2.結局はグローバル変数の定義です
3.ourの有効範囲はレキシカルスコープなんでパッケージも越えてしまう
参考リンク
http://perldoc.jp/docs/perl/5.10.0/perlfunc.pod
1.ourを使うとそのレキシカルスコープ内では完全修飾を
しなくてもアクセス可能(use strict時の話ね)
2.結局はグローバル変数の定義です
3.ourの有効範囲はレキシカルスコープなんでパッケージも越えてしまう
#!/usr/bin/perl -l
use strict;
use warnings;
{
my $test=10;
print $test;
{
our $test=20;
print $test;
}
print $test;
}
print $main::test;
参考リンク
http://perldoc.jp/docs/perl/5.10.0/perlfunc.pod
2009年6月14日日曜日
Windows Liveのサービスの一つ
クリーンアップセンター
http://onecare.live.com/site/ja-jp/center/cleanup.htm
結構早くなったような気がする
※ファイルの圧縮系はチェックを外したほうがよさげ
http://onecare.live.com/site/ja-jp/center/cleanup.htm
結構早くなったような気がする
※ファイルの圧縮系はチェックを外したほうがよさげ
sonb32drv.dllってウィルスに感染してた
/(^o^)\ナンテコッタイ
つーことで対処法
とりあえずC:\WINDOWS\system32\sonb32drv.dllを削除
つーかこの話って2008年の6月くらいの話です・・・
どんだけウィルススキャンさぼってたんだ(;・∀・)
↓はググって分かったこと
・感染経路は?
どうもXREAの広告らしい
感染はFlash Playerの脆弱性により行われる
バージョンが9.0.124より古いと危ないとのこと
http://d.hatena.ne.jp/soundwing/20080614
・ウィルスの活動は?
IEの場合
C:\Documents and Settings\ユーザー名\Local Settings\Temporary Internet Files\
あたりにtaa.gifを作成後orz.exeという実行ファイルに展開されるそうです
場所は%Temp%\orz.exeかな?
http://www.symantec.com/ja/jp/security_response/writeup.jsp?docid=2008-052714-3021-99&tabid=2
→対処方はtaa.gif、orz.exeを消す
sonb32drv.dllを作成されます
→対処方はsonb32drv.dllを消す
C:\WINDOWS\system32\drivers\etc\hostsを削除されます
→対処方はhosts.msnをコピーしhostsにリネームする
まあhostsファイルはデフォルトでlocalhostしか書いてないので以下の内容のファイルでもok
以下のレジストリを追加されます
HKEY_CLASSES_ROOT\CLSID\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
→対処方は上記のレジストリを削除
http://www.trendmicro.co.jp/vinfo/virusencyclo/default5.asp?VName=TROJ_GAMETHIEF.M&VSect=Sn
・被害は?
このプログラムはキーロガーのようです
プレイオンライン、mixi、Windowsメッセンジャーなどのアカウントハック
に遇うかもしれません・・・・
・その他の情報
カスペでは
Trojan-PSW.Win32.Nilage.djl
という名前らしい
Flashのバージョンを上げると勝手に削除してくれるぽい
sonb32drv.dllを削除してくれる場合があるらしい
http://qanda.rakuten.ne.jp/qa4097191.html
その所為なのか自分の環境には↓のレジストリが既に無かった
HKEY_CLASSES_ROOT\CLSID\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
↓はあった(汗
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
まあ直接は関係ないけど
レジストリの掃除にクリーンアップセンターを使うとかね
(上記のレジストリは削除できませんでしたw)
http://onecare.live.com/site/ja-jp/center/cleanup.htm
つーことで対処法
とりあえずC:\WINDOWS\system32\sonb32drv.dllを削除
つーかこの話って2008年の6月くらいの話です・・・
どんだけウィルススキャンさぼってたんだ(;・∀・)
↓はググって分かったこと
・感染経路は?
どうもXREAの広告らしい
感染はFlash Playerの脆弱性により行われる
バージョンが9.0.124より古いと危ないとのこと
http://d.hatena.ne.jp/soundwing/20080614
・ウィルスの活動は?
IEの場合
C:\Documents and Settings\ユーザー名\Local Settings\Temporary Internet Files\
あたりにtaa.gifを作成後orz.exeという実行ファイルに展開されるそうです
場所は%Temp%\orz.exeかな?
http://www.symantec.com/ja/jp/security_response/writeup.jsp?docid=2008-052714-3021-99&tabid=2
→対処方はtaa.gif、orz.exeを消す
sonb32drv.dllを作成されます
→対処方はsonb32drv.dllを消す
C:\WINDOWS\system32\drivers\etc\hostsを削除されます
→対処方はhosts.msnをコピーしhostsにリネームする
まあhostsファイルはデフォルトでlocalhostしか書いてないので以下の内容のファイルでもok
127.0.0.1 localhost
以下のレジストリを追加されます
HKEY_CLASSES_ROOT\CLSID\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
→対処方は上記のレジストリを削除
http://www.trendmicro.co.jp/vinfo/virusencyclo/default5.asp?VName=TROJ_GAMETHIEF.M&VSect=Sn
・被害は?
このプログラムはキーロガーのようです
プレイオンライン、mixi、Windowsメッセンジャーなどのアカウントハック
に遇うかもしれません・・・・
・その他の情報
カスペでは
Trojan-PSW.Win32.Nilage.djl
という名前らしい
Flashのバージョンを上げると勝手に削除してくれるぽい
sonb32drv.dllを削除してくれる場合があるらしい
http://qanda.rakuten.ne.jp/qa4097191.html
その所為なのか自分の環境には↓のレジストリが既に無かった
HKEY_CLASSES_ROOT\CLSID\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
↓はあった(汗
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
まあ直接は関係ないけど
レジストリの掃除にクリーンアップセンターを使うとかね
(上記のレジストリは削除できませんでしたw)
http://onecare.live.com/site/ja-jp/center/cleanup.htm
2009年6月11日木曜日
vimで開いたファイルに日本語が無かった場合の挙動を制御
vimで
set fileencodings=utf-8,ucs-bom,cp932,ucs-2,euc-jp
↑を書いておくと上から順に判定してくれる。ただしこう書いておくと困ることがある
日本語を含まないファイルを開くとUTF-8でfencしてしまう。(:eで新規作成するファイルはencの値を使われるので問題ない)
つーわけでスクリプトで解決する。
ずんwikiに日本語判定スクリプトがあったので参考にする
ただし、このスクリプトには問題があってsearch関数はカーソル以下を検索するのでカーソル前に日本語があっても見逃してしまう
例えば下記の例で3行目にカーソルがあると日本語なしと判断してしまう
こんな感じで書くといいんじゃないでしょうか
set fileencodings=utf-8,ucs-bom,cp932,ucs-2,euc-jp
↑を書いておくと上から順に判定してくれる。ただしこう書いておくと困ることがある
日本語を含まないファイルを開くとUTF-8でfencしてしまう。(:eで新規作成するファイルはencの値を使われるので問題ない)
つーわけでスクリプトで解決する。
ずんwikiに日本語判定スクリプトがあったので参考にする
ただし、このスクリプトには問題があってsearch関数はカーソル以下を検索するのでカーソル前に日本語があっても見逃してしまう
例えば下記の例で3行目にカーソルがあると日本語なしと判断してしまう
aaa
ああああ
hogehoge←カーソル
こんな感じで書くといいんじゃないでしょうか
" 日本語を含まない場合は fileencoding に encoding を使うようにする
function! AU_ReCheck_FENC()
let l:c=line(".")
normal gg
if search("[^\x01-\x7e]", 'n') == 0
"let &fileencoding=&encoding
set fenc=cp932
call cursor(l:c,1)
endif
endfunction
autocmd BufReadPost * call AU_ReCheck_FENC()
2009年6月10日水曜日
perlで定数を宣言するには?
1.use constantモジュールを使う
2.型グロブとリファレンスを駆使して上書き禁止の変数にする
参考リンク
http://www2u.biglobe.ne.jp/~MAS/perl/waza/const.html
http://chaichan.web.infoseek.co.jp/perlnote/perlnote2008-03-153.htm
http://www.rfs.jp/sb/perl/02/02.html#TRY!%20%E5%AE%9A%E6%95%B0%E3%81%AE%E5%AE%A3%E8%A8%80
#!/usr/bin/perl
use constant TEISU => 777;
use constant {
HOGE => 'あああ',
HAGE => 'いいい'
};
2.型グロブとリファレンスを駆使して上書き禁止の変数にする
#!/usr/bin/perl -l
*TEISU=\777;
*KENSAKU=\(quotemeta 'てすと');
print $TEISU;
参考リンク
http://www2u.biglobe.ne.jp/~MAS/perl/waza/const.html
http://chaichan.web.infoseek.co.jp/perlnote/perlnote2008-03-153.htm
http://www.rfs.jp/sb/perl/02/02.html#TRY!%20%E5%AE%9A%E6%95%B0%E3%81%AE%E5%AE%A3%E8%A8%80
2009年6月9日火曜日
Linux(Debian Lenny)で電源ボタン押下時の設定をする
ふと、Debian稼動中に電源ボタンを押したらキチンとしたシーケンスでシャットダウンされたのでそこら辺の設定ってどうなってるのよー?って思ったのでメモ
/etc/acpi/events/powerbtn
ってファイルで設定できるみたいね
詳しくは以下のサイトを参照下さい
http://www.watanet.org/~chihiro/index.cgi/linux/ubuntu/20090210_ubuntu-powerbtn-hibernate.html
/etc/acpi/events/powerbtn
ってファイルで設定できるみたいね
詳しくは以下のサイトを参照下さい
http://www.watanet.org/~chihiro/index.cgi/linux/ubuntu/20090210_ubuntu-powerbtn-hibernate.html
2009年6月8日月曜日
mmfの着メロを作ってダウンロードしたい
以下、やり方
1.適当に音楽を選びwavファイルを作成
2.ここからSSC-MA3-SMAFをダウンロード&インストール
3.えせ着うたフロントエンドSMAF版をダウンロード&インストール
4.適当に作成する
5.サーバーにアップロードする 最近の機種はObjectタグが使えるのでめんどくさいCGIを用意しなくてもいいみたい ↓あたり参考にどぞ
http://www.au.kddi.com/ezfactory/tec/dlcgi/download_1.html
http://www.au.kddi.com/ezfactory/tec/spec/wap_tag5.html
6.サーバにmmfをアップロード
ファイルへのリンクはこんな感じで
<object data="data/keion.mmf" type="application/x-smaf" copyright="no" standby="down">
<param name="disposition" value="dev4anm" valuetype="data" />
<param name="size" value="134669" valuetype="data" />
<param name="title" value="タイトル名" valuetype="data" />
</object>
あと.htaccessにこんなの書いとくといいのかな
AddType application/x-smaf .mmf
ちなみにW43Kは目標サイズを150にするといいみたいだ
1.適当に音楽を選びwavファイルを作成
2.ここからSSC-MA3-SMAFをダウンロード&インストール
3.えせ着うたフロントエンドSMAF版をダウンロード&インストール
4.適当に作成する
5.サーバーにアップロードする 最近の機種はObjectタグが使えるのでめんどくさいCGIを用意しなくてもいいみたい ↓あたり参考にどぞ
http://www.au.kddi.com/ezfactory/tec/dlcgi/download_1.html
http://www.au.kddi.com/ezfactory/tec/spec/wap_tag5.html
6.サーバにmmfをアップロード
ファイルへのリンクはこんな感じで
<object data="data/keion.mmf" type="application/x-smaf" copyright="no" standby="down">
<param name="disposition" value="dev4anm" valuetype="data" />
<param name="size" value="134669" valuetype="data" />
<param name="title" value="タイトル名" valuetype="data" />
</object>
あと.htaccessにこんなの書いとくといいのかな
AddType application/x-smaf .mmf
ちなみにW43Kは目標サイズを150にするといいみたいだ
2009年6月7日日曜日
今更ながらYankRingを入れてみた
長いことvim使ってるくせに知らなかった・・・OTZ
つーことでインストールしてみる -> YankRing
基本的な使い方は
1.適当にyyとかでコピーする
2.適当にyyとかでコピーする(以下省略
3.pで貼り付け前の履歴を貼り付けたかったらCtrl-Pを押す、次の履歴を貼り付けたかったらCTRL-Nを押す
知らなきゃ駄目そうなコマンドは以下の通り
YRClear → ヤンクリストのクリア
YRShow → ヤンクリストの表示
YRToggle → YankRingの有効/無効の切り替え
設定しておくべき変数は以下の通り
g:yankring_max_history → ヤンクリストの履歴保持数
g:yankring_ignore_duplicate → ヤンクしたときに重複行を追加するか否か 1は重複した行を追加しない
g:yankring_clipboard_monitor → クリップボードをモニタリングするかどうか これが1だとCtrl-Pとか押した時に"*バッファの内容も表示される
参考リンク
http://nanasi.jp/articles/vim/yankring_vim.html
つーことでインストールしてみる -> YankRing
基本的な使い方は
1.適当にyyとかでコピーする
2.適当にyyとかでコピーする(以下省略
3.pで貼り付け前の履歴を貼り付けたかったらCtrl-Pを押す、次の履歴を貼り付けたかったらCTRL-Nを押す
知らなきゃ駄目そうなコマンドは以下の通り
YRClear → ヤンクリストのクリア
YRShow → ヤンクリストの表示
YRToggle → YankRingの有効/無効の切り替え
設定しておくべき変数は以下の通り
g:yankring_max_history → ヤンクリストの履歴保持数
g:yankring_ignore_duplicate → ヤンクしたときに重複行を追加するか否か 1は重複した行を追加しない
g:yankring_clipboard_monitor → クリップボードをモニタリングするかどうか これが1だとCtrl-Pとか押した時に"*バッファの内容も表示される
参考リンク
http://nanasi.jp/articles/vim/yankring_vim.html
2009年5月31日日曜日
MPC(Media Player Classic)についてのまとめ
派生とかいろいろ分からなくなるのでここでまとめておく
・本家本元(ただしもう更新されなくなっているので原則使わない)
http://sourceforge.net/projects/guliverkli/
・本家からちょっと修正された版(DownLoad→Media Player Classic6.4.9.1をどうぞ)
http://sourceforge.net/projects/guliverkli2/
・MPC Home Cinemaという派生版 いろいろ機能追加されている
http://mpc-hc.sourceforge.net/
オマケ 便利なコーデックパック→CCCP
・本家本元(ただしもう更新されなくなっているので原則使わない)
http://sourceforge.net/projects/guliverkli/
・本家からちょっと修正された版(DownLoad→Media Player Classic6.4.9.1をどうぞ)
http://sourceforge.net/projects/guliverkli2/
・MPC Home Cinemaという派生版 いろいろ機能追加されている
http://mpc-hc.sourceforge.net/
オマケ 便利なコーデックパック→CCCP
2009年5月30日土曜日
2009年5月18日月曜日
2009年5月10日日曜日
2009年5月9日土曜日
vim7.2にしてからExploreの様子がおかしい
なんかx:execが使えないことに気づいた
↓
よく分からないので昔使ってたvim7.1(香り屋版)で試す
↓
使える
↓
オプションを見直す
↓
どうやらset shellslashが悪さしてるっぽいのでsyntax/netrw.vimの頭にsetlocal noshellslash
を追加して直す
んーvim7.1ではshellslashを有効にしてても使えたのになんでだろう・・・
まあ直ったからいいか
↓
よく分からないので昔使ってたvim7.1(香り屋版)で試す
↓
使える
↓
オプションを見直す
↓
どうやらset shellslashが悪さしてるっぽいのでsyntax/netrw.vimの頭にsetlocal noshellslash
を追加して直す
んーvim7.1ではshellslashを有効にしてても使えたのになんでだろう・・・
まあ直ったからいいか
Perlパッケージに含まれる便利なツール郡
http://www.linux.or.jp/JF/JFdocs/LFS-BOOK/appendixa/perl.html
これに加えWindows版のPerlにはpl2batというperlスクリプトをbatファイルにするツールがあります
これに加えWindows版のPerlにはpl2batというperlスクリプトをbatファイルにするツールがあります
2009年5月8日金曜日
2009年5月5日火曜日
2009年4月26日日曜日
perlでDBMファイルを取り扱う
最近はtieという関数を使うらしい・・・
#!/usr/bin/perl
use feature qw(say);
use SDBM_File;
use Fcntl;
tie (%HA,'SDBM_File',"test",O_RDWR|O_CREATE,0644);
%HA=(one=>1,two=>2,three=>3);
while ( ($a,$b)=each %HA){
say "$a -> $b";
}
untie %HA;
参考リンク
http://www.lr.pi.titech.ac.jp/~abekawa/perl/perl_bigdata.html
http://perldoc.jp/docs/perl/5.10.0/perltie.pod
http://www.ecopig.jp/comucale/dbm.htm
http://search.cpan.org/~nwclark/perl-5.8.9/ext/SDBM_File/SDBM_File.pm
#!/usr/bin/perl
use feature qw(say);
use SDBM_File;
use Fcntl;
tie (%HA,'SDBM_File',"test",O_RDWR|O_CREATE,0644);
%HA=(one=>1,two=>2,three=>3);
while ( ($a,$b)=each %HA){
say "$a -> $b";
}
untie %HA;
参考リンク
http://www.lr.pi.titech.ac.jp/~abekawa/perl/perl_bigdata.html
http://perldoc.jp/docs/perl/5.10.0/perltie.pod
http://www.ecopig.jp/comucale/dbm.htm
http://search.cpan.org/~nwclark/perl-5.8.9/ext/SDBM_File/SDBM_File.pm
NetTransportを入れるとIEのダウンロードの挙動が変わる
Q.IEのダウンロードを横取りしてしまうのですがどうすればいいのですか?
A.ドロップウィンドウかタスクトレイのアイコン右クリックして
ブラウザの監視のチェック外せばいいだけです。
だそうです
参考リンク
http://www.wikihouse.com/windows/index.php?Net%20Transport
A.ドロップウィンドウかタスクトレイのアイコン右クリックして
ブラウザの監視のチェック外せばいいだけです。
だそうです
参考リンク
http://www.wikihouse.com/windows/index.php?Net%20Transport
2009年4月19日日曜日
PDFのパスワードを解析するソフトpdfcrack
Debian(lenny)のレポジトリにありました。
aptで簡単インストール。
使い方は
みたいに使う
途中でCtrl+Cで止めてもカレントディレクトリにsavedstate.savが出来るから
また再開したいときには
みたいな感じで
参考リンク
http://gigazine.net/index.php?/news/comments/20090219_pdfcrack/
aptで簡単インストール。
使い方は
pdfcrack hoge.pdf
みたいに使う
途中でCtrl+Cで止めてもカレントディレクトリにsavedstate.savが出来るから
また再開したいときには
pdfcrack -l savedstate.sav hoge.pdf
みたいな感じで
参考リンク
http://gigazine.net/index.php?/news/comments/20090219_pdfcrack/
2009年4月18日土曜日
2009年4月16日木曜日
2009年4月15日水曜日
オラバウトが閉鎖されちゃうよー。・゚・(ノд`)・゚・。
そんなあなたに
シナバウト
http://www.alabout.com/
オラバウトNEXT
http://gazouch.net/allabout/
ヨロバウト
http://reafin.net/
オラバウト跡地
http://www.genie.x0.com/alabout/closed.phtml
シナバウト
http://www.alabout.com/
オラバウトNEXT
http://gazouch.net/allabout/
ヨロバウト
http://reafin.net/
オラバウト跡地
http://www.genie.x0.com/alabout/closed.phtml
2009年4月11日土曜日
2009年4月4日土曜日
HTTP::Liteモジュール
Net::HTTPより簡単なHTTPモジュールあったよー
\(^O^)/
参考リンク
http://perldoc.jp/docs/modules/HTTP-Lite-2.1.4/HTTP/Lite.pod
\(^O^)/
参考リンク
http://perldoc.jp/docs/modules/HTTP-Lite-2.1.4/HTTP/Lite.pod
2009年3月30日月曜日
perlで良く使うモジュールNet::HTTP
ここでメモっておく
CPANリンク
http://search.cpan.org/~gaas/libwww-perl-5.825/lib/Net/HTTP.pm
use Net::HTTP;
my $s = Net::HTTP->new(Host => "www.perl.com") || die $@;
$s->write_request(GET => "/", 'User-Agent' => "Mozilla/5.0");
my($code, $mess, %h) = $s->read_response_headers;
while (1) {
my $buf;
my $n = $s->read_entity_body($buf, 1024);
die "read failed: $!" unless defined $n;
last unless $n;
print $buf;
}
CPANリンク
http://search.cpan.org/~gaas/libwww-perl-5.825/lib/Net/HTTP.pm
2009年3月24日火曜日
2009年3月22日日曜日
flvをサーバー側で再生する
JW FLV MEDIA PLAYERというのがおすすめ
↓みたいなウィザード形式でコードも出してくれる親切設計
http://www.longtailvideo.com/support/jw-player-setup-wizard?example=1
↓みたいなウィザード形式でコードも出してくれる親切設計
http://www.longtailvideo.com/support/jw-player-setup-wizard?example=1
コンソールの設定をする setterm
前回も話したけどその続き、
前回までの課題はログインしないとsettermを実行できないこと
実行前にsettermするにはDebianだと"/etc/console-tools/config"を修正する
だそうです。
参考リンク
http://blogs.yahoo.co.jp/debilman01/860916.html
前回までの課題はログインしないとsettermを実行できないこと
実行前にsettermするにはDebianだと"/etc/console-tools/config"を修正する
BALNK_TIME=N (N:0-60: 放置してから画面を暗転させるまでの分数)
BLANK_DPMS=on (画面の省電力モードをサスペンドモードにセット *1)
POWERDOWN_TIME=N (N:0-60: 暗転してからモニタの電源を切るまでの分数)
(*1 BLANK_DPMS=powerdown とした場合サスペンドモードを経由せずBLANK_TIMEで設定した時間でモニタの電源断)
だそうです。
参考リンク
http://blogs.yahoo.co.jp/debilman01/860916.html
smbmountの話
Debianだとそのものずばりのコマンド名のパッケージはないので
smbfsをインストールする
http://www.millionwaves.com/200604140613.html
そんで適当にマウント
smbmount //192.168.0.2/ボリューム\ \(D\)/bakup /mnt/ -o guest
guestを指定してやればパスワードのプロンプトが出ない
http://www9.samba.gr.jp/project/translation/3.0/htmldocs/smbmount.8.html
パスワードがあってプロンプトを出さない方法は↓
ユーザー名が smb
パスワードが hoge
なら
smb%hoge
あるいは
username=smb,password=hoge
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=21439&forum=10&2
smbfsをインストールする
http://www.millionwaves.com/200604140613.html
そんで適当にマウント
smbmount //192.168.0.2/ボリューム\ \(D\)/bakup /mnt/ -o guest
guestを指定してやればパスワードのプロンプトが出ない
http://www9.samba.gr.jp/project/translation/3.0/htmldocs/smbmount.8.html
パスワードがあってプロンプトを出さない方法は↓
ユーザー名が smb
パスワードが hoge
なら
smb%hoge
あるいは
username=smb,password=hoge
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=21439&forum=10&2
perlのモジュール・・・名前空間の話
ちょっとウヤムヤにしておいたけどここで理解しておこう
まあつまり
use Module::hoge (LIST)
ってやってLISTにインポートしたい関数を書いておきなさいというわけですな
参考リンク
http://adiary.blog.abk.nu/0148
http://d.hatena.ne.jp/perlcodesample/20090205/1232879205
http://perldoc.jp/docs/perl/5.10.0/perlmod.pod
まあつまり
use Module::hoge (LIST)
ってやってLISTにインポートしたい関数を書いておきなさいというわけですな
参考リンク
http://adiary.blog.abk.nu/0148
http://d.hatena.ne.jp/perlcodesample/20090205/1232879205
http://perldoc.jp/docs/perl/5.10.0/perlmod.pod
Windowsの共有ファイルにperlでアクセスするには
普通にopen,opendirが使えるみたい
まあ目的はローカルにあるファイルを共有フォルダへコピーだったので
こんな感じで
open (FH,"//192.168.0.11/share/hoge.txt");
opendir (DIR,"192.168.0.11/share");
まあ目的はローカルにあるファイルを共有フォルダへコピーだったので
こんな感じで
use File::Copy;
$dir='//192.168.0.11/share/';
copy $backup_filename,$dir;
WebDAVの設定をDebian lennyでやってみる
前回とちょっと違う部分があったので補足を含め書きます。
1.a2enmodで必要なモジュール読み込む
a2enmod dav
a2enmod dav_fs
2.httpd.confに↓みたいに書いとけばok
そんでまあcalってディレクトリ作ってパーミッションとか777にしとけば
まあ間違いないだろう
Dav On
Options Indexes
AuthType Basic
AuthName "input webdav password!"
AuthUserFile "/etc/apache2/passwd"
Require valid-user
Order allow,deny
allow from all
3.ロックファイルやらうんちゃらは
/etc/apache2/mods-enabled
にある
dav_fs.conf
で定義してあるから別に書かなくてもおk
3.5.Windowsのネットワークプレースでの確認方法は
ネットワークプレースの追加→ウィザード開く→基本次へで進む→アドレスに↓を記述してOK
4.thunderbirdにlightningって拡張いれて
新しいカレンダーでも作ってごにょごにょすれば良いですよ
参考リンク
休日カレンダーICS
http://www.mozilla-japan.org/projects/calendar/holidays.html
1.a2enmodで必要なモジュール読み込む
a2enmod dav
a2enmod dav_fs
2.httpd.confに↓みたいに書いとけばok
そんでまあcalってディレクトリ作ってパーミッションとか777にしとけば
まあ間違いないだろう
Dav On
Options Indexes
AuthType Basic
AuthName "input webdav password!"
AuthUserFile "/etc/apache2/passwd"
Require valid-user
Order allow,deny
allow from all
3.ロックファイルやらうんちゃらは
/etc/apache2/mods-enabled
にある
dav_fs.conf
で定義してあるから別に書かなくてもおk
3.5.Windowsのネットワークプレースでの確認方法は
ネットワークプレースの追加→ウィザード開く→基本次へで進む→アドレスに↓を記述してOK
http://hogehoge.com:8000/cal/
↑アドレス ↑WebDAVが有効なディレクトリ
4.thunderbirdにlightningって拡張いれて
新しいカレンダーでも作ってごにょごにょすれば良いですよ
参考リンク
休日カレンダーICS
http://www.mozilla-japan.org/projects/calendar/holidays.html
vimのtips2
"自動整形の実行方法を決める
"改行後もコメントとするかとか
"set formatoptions?
"コマンド結果をリダイレクト
":h :redir
"キーコード(特殊文字) Ctrl+k 押してからキー押すと
"名前を挿入できる
":h key-codes
"タブをスペースに変更
"set expandtab
"retab
" テキストファイルに固有の設定を
" 残す
"h modeline
"プラグイン、固有の設定ファイル
"boxes
"diff.exe
"all colors pack
"txt.vim -> $VIMRUNTIME/syntax/txt.vim
"MRU.vim
"skeleton.html
"テキストに対し固有の設定を書く
"マッピングなどはmodeline使えないため
"autocmd BufRead ~/デスクトップ/kara.txt set nonu |
" \nnoremap j gj| nnoremap k gk
"ステータスラインを長さによって表示項目変更
":function STline()
"if winwidth(0) >= 120
" set statusline=%<%f\ %m%r%h%w%=%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}\ \ %2*%y%0*%6l,%c%V%1*%8P
"else
" set stl&
"endif
":endfunction
"
"autocmd VimResized * call STline()
"改行後もコメントとするかとか
"set formatoptions?
"コマンド結果をリダイレクト
":h :redir
"キーコード(特殊文字) Ctrl+k 押してからキー押すと
"名前を挿入できる
":h key-codes
"タブをスペースに変更
"set expandtab
"retab
" テキストファイルに固有の設定を
" 残す
"h modeline
"プラグイン、固有の設定ファイル
"boxes
"diff.exe
"all colors pack
"txt.vim -> $VIMRUNTIME/syntax/txt.vim
"MRU.vim
"skeleton.html
"テキストに対し固有の設定を書く
"マッピングなどはmodeline使えないため
"autocmd BufRead ~/デスクトップ/kara.txt set nonu |
" \nnoremap j gj| nnoremap k gk
"ステータスラインを長さによって表示項目変更
":function STline()
"if winwidth(0) >= 120
" set statusline=%<%f\ %m%r%h%w%=%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}\ \ %2*%y%0*%6l,%c%V%1*%8P
"else
" set stl&
"endif
":endfunction
"
"autocmd VimResized * call STline()
2009年3月21日土曜日
TMTOWTDIの話
there's more than one way to do it
略して
TMTOWTDI
perlのスローガン
意味は「やり方はいくらでもある」みたいな
うーんためになる
よくアドレスを忘れるからメモ
努力、忍耐、謙遜 (Larry Wall)
http://www.oreilly.co.jp/BOOK/osp/OpenSource_Web_Version/chapter10/chapter10.html
略して
TMTOWTDI
perlのスローガン
意味は「やり方はいくらでもある」みたいな
うーんためになる
よくアドレスを忘れるからメモ
努力、忍耐、謙遜 (Larry Wall)
http://www.oreilly.co.jp/BOOK/osp/OpenSource_Web_Version/chapter10/chapter10.html
2009年3月20日金曜日
gvim (vim)で半透明にしたり、常に前面ウィンドウにしたり
っていうのはVimTweakっていうDLLを使えばいいらしい
透明度の調整
:call libcallnr("vimtweak.dll", "SetAlpha", 200)
:call libcallnr("vimtweak.dll", "SetAlpha", 255)
常に前面ウィンドウ
:call libcallnr("vimtweak.dll", "EnableTopMost", 1)
常に前面ウィンドウの解除
:call libcallnr("vimtweak.dll", "EnableTopMost", 0)
参考リンク
http://liosk.blog103.fc2.com/blog-entry-148.html
透明度の調整
:call libcallnr("vimtweak.dll", "SetAlpha", 200)
:call libcallnr("vimtweak.dll", "SetAlpha", 255)
常に前面ウィンドウ
:call libcallnr("vimtweak.dll", "EnableTopMost", 1)
常に前面ウィンドウの解除
:call libcallnr("vimtweak.dll", "EnableTopMost", 0)
参考リンク
http://liosk.blog103.fc2.com/blog-entry-148.html
2009年3月8日日曜日
squidを設定する時に気をつけること・・・
なんか色々みたけど難しくてよー分からん。
↓くらい気にしとけばいいんでないの
・メモリ領域 (cache_mem)
・メモリに置くオブジェクトサイズ (maximum_object_size_in_memory)
・HDDに置くサイズ (cache_dir)
・HDDに置くオブジェクトサイズ(maximum_object_size)
・オブジェクトサイズの平均値(store_avg_object_size)
・速いDNSサーバー( dns_nameservers )
あとはcachemgr.cgiとか参照してください(debianだとsquid-cgiパッケージに同梱)
↓くらい気にしとけばいいんでないの
・メモリ領域 (cache_mem)
・メモリに置くオブジェクトサイズ (maximum_object_size_in_memory)
・HDDに置くサイズ (cache_dir)
・HDDに置くオブジェクトサイズ(maximum_object_size)
・オブジェクトサイズの平均値(store_avg_object_size)
・速いDNSサーバー( dns_nameservers )
あとはcachemgr.cgiとか参照してください(debianだとsquid-cgiパッケージに同梱)
perlでリターンキーを待たずにキーのデータを一つ読み取るには?
Term::ReadKeyを使えばいいらしい
使い方:
ReadModeで読み方を指定 引数は0~5のどれか
0・・・元々の設定に戻す
1・・・普通のモード
2・・・1と同じだがechoされない(自分が入力したものが見れないからパスワード入力などに使える)
3・・・cbreakモード Ctrl+Cで止めるとかできる
4・・・rowモード Ctrl+Cで止めるとか無理。改行コード変換はしてくれる。
5・・・4と同じだが改行コード変換はしてくれない。(Windows環境では4と5は同じ)
ReadKeyで読み込む 引数は0、-1、0より大きい値のどれか
0・・・getc見たいに1文字よみます(引数省略時のデフォルト)
-1・・・ノンブロッキングリード
引数>0・・・引数秒だけwaitし、時間になったらundefを返す
例
参考サイト
http://search.cpan.org/~stsi/TermReadKey/ReadKey.pm
http://perldoc.jp/docs/perl/5.10.0/perlfaq8.pod
http://www.jp-z.jp/perlmemo/IF_Term-ReadKey.html
使い方:
ReadModeで読み方を指定 引数は0~5のどれか
0・・・元々の設定に戻す
1・・・普通のモード
2・・・1と同じだがechoされない(自分が入力したものが見れないからパスワード入力などに使える)
3・・・cbreakモード Ctrl+Cで止めるとかできる
4・・・rowモード Ctrl+Cで止めるとか無理。改行コード変換はしてくれる。
5・・・4と同じだが改行コード変換はしてくれない。(Windows環境では4と5は同じ)
ReadKeyで読み込む 引数は0、-1、0より大きい値のどれか
0・・・getc見たいに1文字よみます(引数省略時のデフォルト)
-1・・・ノンブロッキングリード
引数>0・・・引数秒だけwaitし、時間になったらundefを返す
例
#!/usr/bin/perl
use Term::ReadKey;
print $Term::ReadKey::VERSION;
print "\n";
ReadMode 3;
while (1){
$char = ReadKey(5);
last if not defined $char;
printf ("%1s is %X ",$char,ord $char);
print "\n";
}
参考サイト
http://search.cpan.org/~stsi/TermReadKey/ReadKey.pm
http://perldoc.jp/docs/perl/5.10.0/perlfaq8.pod
http://www.jp-z.jp/perlmemo/IF_Term-ReadKey.html
2009年3月7日土曜日
2009年3月2日月曜日
squidをweb経由で設定する
squid-cgiをaptかなんかでインストールしてください
そんでsquid.confにある
cachemgr_passwd
あたりを参照して適当に設定してください
あとは
http://自分の鯖/cgi-bin/cachemgr.cgi
あと/etc/squid/のなかにあるcachemgr.confのポート番号も直すこと
あとアクセスリストとか・・・↓参照で・・・
でおk
参考リンク
http://swkoji.blog63.fc2.com/blog-category-8.html
http://perltips.twinkle.cc/server/squid_cachemgr.php
そんでsquid.confにある
cachemgr_passwd
あたりを参照して適当に設定してください
あとは
http://自分の鯖/cgi-bin/cachemgr.cgi
あと/etc/squid/のなかにあるcachemgr.confのポート番号も直すこと
あとアクセスリストとか・・・↓参照で・・・
でおk
参考リンク
http://swkoji.blog63.fc2.com/blog-category-8.html
http://perltips.twinkle.cc/server/squid_cachemgr.php
2009年3月1日日曜日
sambaの設定でmaskがうまくいかない
create mask = 777
ってしても実行権限が外れてしまう・・・
でも、そういう仕様らしい
↓参考
http://roserogue.blogspot.com/2007/08/create-mask775.html
ってしても実行権限が外れてしまう・・・
でも、そういう仕様らしい
↓参考
http://roserogue.blogspot.com/2007/08/create-mask775.html
2009年2月28日土曜日
perlのワンライナー
よく忘れるのでメモ
↓は普通の使い方
↓test.txtの中身を表示 -nオプションは
こんな感じの意味
while (<>) {
... # your program goes here
}
↓test.txtの中身を表示 -pオプションは
-nの最後にプリント文をかます様なイメージ
ライン処理を追加する(print文の後に改行+<>後にchmop)
-iオプションは対象のファイルを上書きする
注意するのは-iはその後に変更前のファイル名を取るので
まとめないこと(-ipleは駄目)
上がtest.txtの頭に行番号を付加する
下が変更前のtest.txtをtest.txt.backとして残す
参考リンク
http://blog.livedoor.jp/dankogai/archives/51026593.html
http://perldoc.jp/docs/perl/5.6.1/perlrun.pod
http://www.google.co.jp/
↓は普通の使い方
perl -e 'print "hello"'
↓test.txtの中身を表示 -nオプションは
こんな感じの意味
while (<>) {
... # your program goes here
}
perl -ne 'print' test.txt
↓test.txtの中身を表示 -pオプションは
-nの最後にプリント文をかます様なイメージ
perl -pe '' test.txt
ライン処理を追加する(print文の後に改行+<>後にchmop)
perl -lpe '' test.txt
-iオプションは対象のファイルを上書きする
注意するのは-iはその後に変更前のファイル名を取るので
まとめないこと(-ipleは駄目)
上がtest.txtの頭に行番号を付加する
下が変更前のtest.txtをtest.txt.backとして残す
perl -i -ple 's/^(.*$)/$.$1/' test.txt
perl -i.back -ple 's/^(.*)/$. \: $1/' test.txt
参考リンク
http://blog.livedoor.jp/dankogai/archives/51026593.html
http://perldoc.jp/docs/perl/5.6.1/perlrun.pod
http://www.google.co.jp/
2009年2月22日日曜日
ちょっとsshの鍵認証についてまとめておこうか
設定は/etc/ssh/sshd_config
下は推奨設定
ssh-keygen -t rsa
で作る
/home/hogehoge/.ssh/id_rsaに保存
パスフレーズも決める
id_rsa 秘密鍵
id_rsa.pub 公開鍵
公開鍵(id_rsa.pub)は
~/.ssh/authorized_keys
にリネームする
秘密鍵はクライアントに転送
クライアントがLinuxの場合は
~/.ssh/id_rsa
と置く
クライアントがWindowsの場合は
puttygen.exeを起動Loadを押して
id_rsaを読み込ませパスフレーズを入力→
変換後はprivatkeyとして保存(ppkファイル)
ログインの際は
ssh -p 2200 hogehoge@hoge.com
みたいな感じ
id_rsa(秘密鍵)を指定する場合は
ssh -p 2200 -i hoge.rsa hogehoge@hoge.com
みたいにする
参考URL
http://www.jitaku-server.net/ssh_crypto.html
http://kazmax.zpp.jp/linux/lin_sshrsa.html
下は推奨設定
AllowUsers hogehoge
Port 443
PasswordAuthentication no
PermitRootLogin no
PermitEmptyPasswords no
ssh-keygen -t rsa
で作る
/home/hogehoge/.ssh/id_rsaに保存
パスフレーズも決める
id_rsa 秘密鍵
id_rsa.pub 公開鍵
公開鍵(id_rsa.pub)は
~/.ssh/authorized_keys
にリネームする
秘密鍵はクライアントに転送
クライアントがLinuxの場合は
~/.ssh/id_rsa
と置く
クライアントがWindowsの場合は
puttygen.exeを起動Loadを押して
id_rsaを読み込ませパスフレーズを入力→
変換後はprivatkeyとして保存(ppkファイル)
ログインの際は
ssh -p 2200 hogehoge@hoge.com
みたいな感じ
id_rsa(秘密鍵)を指定する場合は
ssh -p 2200 -i hoge.rsa hogehoge@hoge.com
みたいにする
参考URL
http://www.jitaku-server.net/ssh_crypto.html
http://kazmax.zpp.jp/linux/lin_sshrsa.html
コンソール環境でモニタの電源を切るには
Debian Lennyで試した
ディスプレイを自動的にきる設定
$ setterm -powersave on -powerdown 1
とかしておくといいらしい
あと↓も必要だと思う
$ setterm -blank 1
起動時に自動的にこの設定をするにはこちら
参考リンク
http://osdir.com/ml/linux.debian.jp.user/2004-02/msg00035.html
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/251stopconsuspnd.html
ディスプレイを自動的にきる設定
$ setterm -powersave on -powerdown 1
とかしておくといいらしい
あと↓も必要だと思う
$ setterm -blank 1
起動時に自動的にこの設定をするにはこちら
参考リンク
http://osdir.com/ml/linux.debian.jp.user/2004-02/msg00035.html
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/251stopconsuspnd.html
2009年2月21日土曜日
perlの数値回りのはなしー
printf "%u\n",~0;
チルダ+0で上限値が出る?みたいね
まあCOBOLで言うところのHIGH-VALUEみたいなもんか
追記
上限値が出るっていうかあれです
ビット演算のビット反転効果があったみたいですね
http://www.rfs.jp/sb/perl/02/bit.html
参考リンク
http://questionbox.jp.msn.com/qa2174949.html
http://perldoc.jp/docs/perl/5.8.8/perlop.pod
チルダ+0で上限値が出る?みたいね
まあCOBOLで言うところのHIGH-VALUEみたいなもんか
追記
上限値が出るっていうかあれです
ビット演算のビット反転効果があったみたいですね
http://www.rfs.jp/sb/perl/02/bit.html
参考リンク
http://questionbox.jp.msn.com/qa2174949.html
http://perldoc.jp/docs/perl/5.8.8/perlop.pod
2009年2月15日日曜日
perlでプログレスバー的なものを作る
ポイントは$lと\rです。
$|・・・出力をバッファリングするかどうか(0以外はバッファリングしない。つまりprint文は直ぐ出すということ)
\r・・・キャリッジリターンまあ頭にカーソル戻すよーみたいな意味
参考リンク
http://perl.g.hatena.ne.jp/bosh/20080107/p1
http://www.geocities.co.jp/SiliconValley-Sunnyvale/6128/perl/evalue.html
$|・・・出力をバッファリングするかどうか(0以外はバッファリングしない。つまりprint文は直ぐ出すということ)
\r・・・キャリッジリターンまあ頭にカーソル戻すよーみたいな意味
#!/usr/bin/perl
$max=125;
$split=50;
$| = 1;
$ps=int($max/$split+1);
for (1..$split){
print "[","=" x $_," " x ($split-$_),"]";
print "\r";
sleep 1;
if ($_==$split){
print "[","=" x $split,"]\n";
exit;
}
}
参考リンク
http://perl.g.hatena.ne.jp/bosh/20080107/p1
http://www.geocities.co.jp/SiliconValley-Sunnyvale/6128/perl/evalue.html
2009年2月11日水曜日
2009年2月7日土曜日
perlでSJISマッチング
/\Qあああああ\E/
みたいに\Qと\Eで挟むと良いらしい・・・
まあ何でかと言うと\Qと\Eの間はメタ文字を打ち消す効果があるからだけど
http://saboten009.blogspot.com/2008/02/perl.html
2009年2月2日月曜日
lessとかページャーの設定メモ
lessのエンコードを指定する変数LESSCHARSET
例
そんでデフォルトのページャーを変更する
参考サイト
http://d.hatena.ne.jp/n-kaneshige/20081202/1228194177
例
export LESSCHARSET=dos
そんでデフォルトのページャーを変更する
export PAGER=less
参考サイト
http://d.hatena.ne.jp/n-kaneshige/20081202/1228194177
2009年1月24日土曜日
NetTransportでwebラジオ(ストリーミング)ダウンロード
mms://hoge.com/003h.wsx
↑みたいなURLを探す
1.新規ダウンロード
2.スレッド分割数を1に設定
3.その他の設定→ストリーミングタブ→HTTPストリームにチェック
ちなみにリジュームできるよ
↑みたいなURLを探す
1.新規ダウンロード
2.スレッド分割数を1に設定
3.その他の設定→ストリーミングタブ→HTTPストリームにチェック
ちなみにリジュームできるよ
2009年1月12日月曜日
vim 特定のファイルだけファイルタイプの検出を無効化する
特定のファイルが検査されないようにするには、g:ft_ignore_pat 変数を使います。こ
の変数はデフォルトで次のように設定されています。 >
:let g:ft_ignroe_pat = '\.\(Z\|gz\|bz2\|zip\|tgz\)$'
この設定は圧縮ファイルを検査しないようにしています。
だそうです。
2009年1月11日日曜日
vim tipsとか見るといいな
そんなわけでなんか今日調べたtipsを書いておく
そのライン全てを小文字/大文字に変換
カーソル下にあるファイルを開く
vimrcの環境変数
なんか計算結果を挿入したいとき以下は5x5の結果を挿入
挿入モードで以下のように入れる
合字をいれるときに使う(挿入モードで)
<C-K><S-Space>(キー2つ)と入力することで、文字列"<S-Space>"が入る
参考リンク
http://labs.gmo.jp/blog/ku/2007/05/vimorg_tips.html
http://vim.wikia.com/wiki/Best_Vim_Tips
そのライン全てを小文字/大文字に変換
guu
gUU
カーソル下にあるファイルを開く
gf
vimrcの環境変数
$MYVIMRC
$MYGVIMRC
なんか計算結果を挿入したいとき以下は5x5の結果を挿入
挿入モードで以下のように入れる
Ctrl-R=5*5
合字をいれるときに使う(挿入モードで)
<C-K><S-Space>(キー2つ)と入力することで、文字列"<S-Space>"が入る
Ctrl-k
参考リンク
http://labs.gmo.jp/blog/ku/2007/05/vimorg_tips.html
http://vim.wikia.com/wiki/Best_Vim_Tips
perlでファイルハンドルを切り替えたいとか
そういことがたまにあるはず
そんな時はuse FileHandle;が良いですよ
こんな感じで使うんだ
STDOUTとファイルぐらいの切り替えならこんな感じでselect使うのもありかもね
デフォルトの出力に戻すには
そんな時はuse FileHandle;が良いですよ
こんな感じで使うんだ
#!/usr/local/bin/perl
use FileHandle;
print "Which write file? (a or b)\n";
$in=<STDIN>;
chomp $in;
my $fh = new FileHandle;
if ($in eq "a"){
$fh -> open(">a.txt");
}
elsif ($in eq "b"){
$fh -> open(">b.txt");
}
else{
print "No File!!\n";
exit 0;
}
print $fh "foo bar!\n";
$fh -> close();
STDOUTとファイルぐらいの切り替えならこんな感じでselect使うのもありかもね
print "Write Result? (y or n)\n";
$input_keyboard2=<STDIN>;
chomp $input_keyboard2;
if ($input_keyboard2 eq "y"){
open (FH2 ,">res.txt");
select FH2;
}
デフォルトの出力に戻すには
select STDOUT
2009年1月4日日曜日
よくCMでみかける会社のキャッチコピー
日立 Inspire the Next
東芝 Leading Innovation
松下 idea for life
三菱電機 Changes for the Better
東芝 Leading Innovation
松下 idea for life
三菱電機 Changes for the Better
2009年1月2日金曜日
apache2 なんかのファイルをダウンロードさせたいとき
.htaccessにこう書けば良いんじゃないかな
↓はbatファイルをダウンロードさせる場合
当然ブラウザ依存ですハイ
↓はbatファイルをダウンロードさせる場合
当然ブラウザ依存ですハイ
AddType application/octet-stream .bat
このBlogのテンプレートを変更するには?
Blogger使って長いけどテンプレート(CSS(どこで編集すんだろなーってことでちょっと調べたら出来たのでメモ
そんで
1.上のバーからカスタマイズ
2.HTMLの編集
3.テンプレートを編集
4.中にある↓の辺を注目
/* Posts
-----------------------------------------------
*/
5..post blockquote {に下の2行を追加
background: #a2c2e6;
border: outset thin #d8e0d0;
おしまい
ほらね引用文の見た目が変わったよ↓
そんで
1.上のバーからカスタマイズ
2.HTMLの編集
3.テンプレートを編集
4.中にある↓の辺を注目
/* Posts
-----------------------------------------------
*/
5..post blockquote {に下の2行を追加
background: #a2c2e6;
border: outset thin #d8e0d0;
おしまい
ほらね引用文の見た目が変わったよ↓
てst
てst
あああああ
いいいいい
ubuntu8.10のsambaについて
なんか/etc/samba配下の設定漁ってもGUIで設定した箇所について書かれてないなーと思ったら
/var/lib/samba配下にあった
なんでだろうね まあそういうことです
/var/lib/samba配下にあった
なんでだろうね まあそういうことです
登録:
投稿 (Atom)