トップ   編集 凍結 差分 バックアップ 添付   新規   最終更新のRSS

linux/コマンド

Last-modified: 2009-06-05 (金) 12:06:33 (278d)
Top / linux / コマンド

よく使うけどすぐ忘れるLinuxコマンド

検索

ファイルの検索をする

# find /home/ -name "hoge.txt"

フォルダ名で検索する

# find /home/ -name "0804032035110701" -type d

上記の例は、「/home/」フォルダ以下の、「0804032035110701」フォルダを検索する

ファイル名で検索して、該当したファイルを削除する

# find /home/ -name "Thumbs.db" -exec rf {} \;

上記の例は、「/home/」フォルダ以下の、「Thumbs.db」ファイルを削除する。

フォルダ名で検索して、該当したフォルダを削除する

# find /home/ -name ".svn" -exec rm -rf {} \;

上記の例は、「/home/」フォルダ以下の、「.svn」フォルダを削除する。

過去 30 分以内に更新されたファイルを検索

# find /home -mmin -30 -type f 

上記の例は/home以下の過去30分以内に更新されたファイルを検索
ディレクトリは対象外

grep

あるディレクトリ以下の全てのファイルからgrepをする

find /home/ -type f | xargs grep -n "hoge"

上記の例は、/home/の中の.phpのファイルから「hoge」という文字を含むファイルを抽出する。

あるディレクトリ以下の特定の拡張子のファイルからgrepをする。

# find /home/ -type f -name "*.php" | xargs grep -n "hoge"

上記の例は、/home/の中の.phpのファイルから「hoge」という文字を含むファイルを抽出する。

その他ファイル系

ディレクトリ内のファイル数を数える

# find /tmp/ -type f | wc -l

ディレクトリ内の容量を再帰的に表示

# du -m /home/

オプションの-m はメガバイト単位の表示

ディレクトリの容量を表示(サブディレクトリの情報を表示しない)

# du -sm /home/

サーバーの容量確認

# df -h

シンボリックリンク(ショートカット)の作成

# ln -s /var/www/ /home/hoge/www

上記の例は、/home/hoge/wwwにアクセスすると、/var/www/のフォルダにリンクする

# ln -s /var/www/html/default.php /var/www/html/index.php

上記の例は、/var/www/html/index.phpにアクセスすると、/var/www/html/default.phpにリンクする

圧縮、解凍

tar圧縮

書式

# tar -cf 圧縮後ファイル名 圧縮ディレクトリ

例)

# tar -cf 圧縮後ファイル名 圧縮ディレクトリ

tar解凍

書式

# tar -xf 解凍ファイル名 解凍ディレクトリ

tar.gz圧縮

# tar -czf hoge.tar.gz hoge

tar.gz解凍

# tar -xzf hoge.tar.gz

システム関連

プロセス表示

# ps aux

特定のプロセス表示

# ps aux | grep -i mysql &br;
# ps auxwww | grep httpd

コマンドをバックグラウンドで実行する

# sh /home/hoge/test.sh &

コマンドの最後に、「&」をつける

サーバー文字コード表示

# echo $LANG

ユーザー一覧を表示

# cut -d: -f1 /etc/passwd

サーバーの時間合わせ

# date -s "2008/06/24 19:48:10"

ログイン履歴を表示する

# last 10

10個前のログイン履歴を表示する

ssh

ssh接続

書式

# ssh -l [ユーザー名] [サーバーURL]

例)

# ssh -l hoge 192.168.11.1

sshで接続してコマンドを実行

書式

# ssh -l [ユーザー名] [サーバーURL] "ls"

例)

# ssh -l hoge 192.168.11.1 "ls"

scpでファイル転送

書式

# scp [転送元パス] [転送先サーバーのユーザー名]@[転送先サーバーURL]:[転送先パス]

例)

# scp /home/hoge/test.txt hoge@192.168.11.1:/home/hoge/

主なオプション

  • -r ディレクトリを再帰的にコピーします
  • -p ファイルのパーミッションや、最終変更時刻を保ったまま転送
  • -v 経過を詳細に出力
  • -q 経過を出力しない

tips

tarコマンドでエラーが出てきた場合

tar: Removing leading `/' from member names と出てきた場合

# tar -zcf /home/goumi/backup/pc1.tar.gz /home/release/pc/
tar: Removing leading `/' from member names

圧縮対象に絶対パスを含めると出るエラーメッセージのようです。
下記のように、一度ルートディレクトリに移動して、下記のようにtarコマンドを実行することで解決します。

# cd /
# tar -zcf /home/goumi/backup/pc1.tar.gz home/release/pc/

ユーザー追加系のコマンドが見つからない場合

command not foundとなって、useradd が実行できない場合、

# useradd
bash: useradd: command not found

このようになった場合は
# su -
でルート権限のユーザーに切り替える
※- (ハイフン) オプションの意味は、『シェルをログインシェルに』。

コマンドラインのキーボードショートカット

alt + V
ペースト

  編集