2009-03-01から1ヶ月間の記事一覧

Ubuntu8.10でIPアドレスを固定する

8.10 Desktopでの固定IPアドレス設定のGUI手順 職場のPCに、wubiでコッソリ入れたUbuntuが、起動時にネットワークに接続出来なくてず〜っと悩んでた。 (何度か起動し直して、やっと繋がる状態) 色々調べて、どうやらDHCPでのIP払い出しが怪しいと目星を付け…

サーバデーモンのポート番号

20 --> ftp(PORTモード) 21 --> ftp 22 --> ssh 25 --> smtp 53 --> dns 80 --> http 110 --> pop3 443 --> https 465 --> smtps 995 --> pop3s 3306 --> mysql 5432 --> postgresql 11211 --> memcachedmemcachedだけ備忘録として書くつもりだったけど、も…

FTPでの転送モード

Ascii…改行コードを転送先サーバのOSに合わせて転送 テキストファイルは基本コッチ Binary…ファイルをバイナリイメージで転送 画像や実行ファイルはコッチツールが隠蔽してくれると、こういった基礎の部分を意識しなくても良い反面、トラブった時に弱くなる…

nkfコマンドのオプション

;; 出力文字コード関連 -j : JISコード -e : EUC -s : Shift-Jis -w : UTF-8 ;; 改行コード関連 -Lu : UNIXスタイル(LF) -Lw : Windowsスタイル(CR + LF) -Lm : Macスタイル(CR) ;; 文字コード確認 -g : 文字コードを自動判別 ;; その他 --overwrite : ファ…

SUID、SGID、Sticky bitの概念

SUID (Set User ID) これが設定されたファイルは、任意のユーザーが実行してもファイルの所有者として実行される(スクリプトファイルは除く)。 所有者の実行権限が「s」 パーミッション設定時は先頭が「4」 SGID (Set Group ID) これが設定されたファイルは…

クラスの静的メンバへのアクセス

PHP

URLのクエリ文字列を生成する

PHP

PHPマニュアルより string http_build_query (array $formdata [,string $numeric_prefix [,string $arg_separator ]])与えられた連想配列(もしくは添字配列)からURLエンコードされたクエリ文字列を生成します。 APIを多用したマッシュアップサイトを構築中…

.gitignoreで不要なファイル/ディレクトリを無視する

早速Gitをあれこれイジりまくり。 CodeIgniterのsystem/以下を管理してみたけど、「logs」や「cache」ディレクトリはリポジトリで管理する必要は無さそう。 あと、eclipseもまだ使ってるのでその設定関連もいらない。 そこで、こんな.gitignoreを書いてみた…

バージョン管理Gitの基本操作

適当な管理が原因で必要なソースコードを失ってしまったので、今さらバージョン管理ソフトを導入。 CVSもSVNもスッ飛ばして、いきなりGitにチャレンジ。 以下、基本操作の備忘録。 ローカルにリポジトリを構築 $ cd ~/ $ mkdir develop $ cd develop $ git i…

BINARY属性で大文字・小文字を区別する

CHARやVARCHARといったカラムでのソートや文字列比較は、大文字・小文字を区別しないらしい。 そこで、カラムにBINARY属性を指定しておくと、大文字・小文字を区別してくれるようになる。 BINARY属性は後から指定する事も可能。 これは便利。有効に活用しよ…

apt-get mooで息抜きする

$ apt-get moo (__) (oo) /------\/ / | || * /\---/\ ~~ ~~ ...."Have you mooed today?"...牛が出た(゚ロ゚屮)屮

aliasでコマンドに別名をつける

;; この辺は定番?? alias ls="ls --color=auto" alias ll="ls -l" alias la="ls -la" ;; コレは便利!! alias SERVER_NAME="ssh USER_NAME@SERVER_NAME"POINT aliasを恒常的に利用したい場合は.bashrcとか.zshrcとかに書く 設定ファイルに書いた場合は再ログ…

CentOSのバージョンを確認

$ cat /etc/redhat-release ;; 出力例 -> CentOS release 5.2 (Final)RHELのサイトを見ると、各パッケージのバージョンがいい感じに上がってる^^ 最近待ちきれなくて、毎夜yum check-update…(*´σー`)

printfとsprintfの違い

PHP

printf関数 int printf(string $format [,mixed $args [, mixed $...] ]) ※整形された文字列の長さを返す sprintf関数 string sprintf(string $format [,mixed $args [,mixed $...] ]) ※整形された文字列を返す 書式は一緒だけど返り値が違う。 こういう細か…

yumの主要コマンド

;; PACKAGEをインストール # yum install [PACKAGE] ;; PACKAGEをアンインストール # yum remove [PACKAGE] ;; 更新可能なパッケージをチェック # yum check-update ;; 更新可能なパッケージを全てアップデート # yum update ;; PACKAGEをアップデート # yum…

aptの主要コマンド

;; PACKAGEをインストール $ sudo apt-get install [PACKAGE] ;; PACKAGEをアンインストール $ sudo apt-get remove [PACKAGE] ;; パッケージリストを更新 $ sudo apt-get update ;; インストール済みのパッケージをアップグレード $ sudo apt-get upgrade ;…

コマンドの入力をリダイレクト

;; some_commandにfile_nameの内容を渡す $ some_command < file_name ;; いわゆるヒアドキュメント $ some_command << 終端文字昨日の続き。 コマンドを覚えるには、ひたすら叩く叩く叩く!! □_ヾ(×× ) ツ、ツカレタ

コマンドの結果をリダイレクト

;; 標準出力をfile_nameに書き込む $ some_command > file_name ;; 標準出力をfile_nameの末尾に書き込む $ some_command >> file_name ;; 標準出力・標準エラー出力をfile_nameに書き込む $ some_command > file_name 2>&1ちなみにsh・bashの場合、 標準入…

RPMパッケージをコマンドから利用する

# rpm -ivh PACKAGE -> PACKAGEが存在しなければ新規インストール # rpm -Uvh PACKAGE -> PACKAGEの有無に関わらずインストール # rpm -Fvh PACKAGE -> PACKAGEが既に有ればインストール # rpm -evh PACKAGE -> PACKAGEをアンインストール $ rpm -q PACKAGE …

debパッケージをコマンドから利用する

$ sudo dpkg -i PACKAGE # 指定したPACKAGEをインストール $ sudo dpkg -r PACKAGE # インストール済みのPACKAGEを削除 $ sudo dpkg -P PACKAGE # 設定ファイルも含めてPACKAGEを削除 $ dpkg -l [PACKAGE] # インストール済みのパッケージ一覧 $ dpkg -L PAC…

var_dump()で複数の変数をダンプ

PHP

公式マニュアルより void var_dump ( mixed $expression [, mixed $expression [, $... ]] ) カンマで区切れば複数の引数が指定可能。 しょっちゅう使ってるのに初めて知った。 マニュアルにもっとしっかり目を通さなくちゃ・・・(・x・ ).o0○

Apacheのコンパイルオプションを確認

$ /usr/sbin/httpd -Vこれで確認可能。PHPはphpinfo()すれば良い。 MySQLは… どうやるのかな〜(・x・ ).o0○

ユーザーのホスト名を取得

string gethostbyaddr(string $ip_address) 引数にIPアドレスを指定すれば、PHPが逆引きしてくれる。 Apacheのhttpd.confでHostnameLookupsがon(デフォルトはoff)になってたらもっとカンタン。 echo $_SERVER['REMOTE_HOST'];これでホスト名が表示される。 …

whichコマンドとwhereisコマンドの違い

which … コマンドのパスを表示する whereis … コマンドのパス・コマンドのソースファイル・ manファイルのパスを表示する基本どっちでも良いけど、whereisの方が表示される情報が多い、という事かな??(・x・ ).o0○

正規表現の量指定子

「*」・・・0回以上の繰り返しにマッチ 「?」・・・0回または1回の出現にマッチ 「+」・・・1回以上の出現にマッチこの3つでいつも混乱するのでメモ。 正規表現は超便利だけど処理コストが高いらしい。 いざという時の特効薬みたいな感じ…かな??(・x・ ).o0○

MD5チェックサムでファイルを検証

$ md5sum [ダウンロードしたファイル]これで、対象ファイルのハッシュ値が表示されるので、サイトに掲載されている値と比較すればOK。 MD5ファイルも配布されている場合は一緒にダウンロードして、ファイルをダウンロードしたディレクトリで $ md5sum -c [MD…

CONCAT関数で連結文字列を取得

それでも続くMySQLネタ。 CONCAT関数を利用すると、カラムの文字列を連結したり出来る。 CONCAT(str1, str2, str3, ...)POINT 引数にNULLが含まれると問答無用でNULLを返す INT型などを引数で渡すと、自動的に文字列型にキャストされる mysql> SELECT CONCAT…

mkdirコマンドをより便利に使う

例えば、デフォルトのパーミッション以外でディレクトリを作成したい時 $ mkdir -m アクセス権 dir_name例えば、ホームディレクトリに複数のディレクトリを作りたい時 $ mkdir ~/{dir_name1, dir_name2, dir_name3, ...} -pオプション以外にも色々あるんだ(…

CASE式の書式

しつこく続くMySQLネタ。 CASE WHEN [判定式] THEN [式が真の場合] ELSE [WHEN句に該当しなかった場合] ENDWHEN〜THEN〜は追加する事も可能。その場合、WHEN句が真になった時点で判定は終了し、以降のWHEN句は無視されるらしいので注意が必要。 カラムとして…

PHP5.2.9からarray_unique関数の挙動が変更

CodeIgniterのMLで流れてきた以下のブログで知った。 array_unique関数がPHP5.2.9から後方互換性を失いました - hnwの日記 CodeIgniterではActive Recordのキャッシュ時と、Trackback用のライブラリ内で使ってるみたいで、どっちも利用してないし関係無いや!…