linux/コマンド
Last-modified: 2008-11-19 (水) 11:18:43 (48d)
Linuxコマンド †
ファイル操作 †
tar圧縮 †
書式
# tar -xf [圧縮後ファイル名] [圧縮ディレクトリ]
例)
# tar -xf hoge.tar hoge
tar解凍 †
書式
# tar -cf [解凍ファイル名]
例)
# tar -cf hoge.tar
tar.gz圧縮 †
# tar -czf hoge.tar.gz hoge
tar.gz解凍 †
# tar -xzf hoge.tar.gz
フォルダの検索 †
# find /home/ -name '0804032035110701' -type d
ファイル検索→削除 †
# find /home/ -name "Thumbs.db" -exec rf {} \;
フォルダの検索→削除 †
# find /tmp/ -name ".svn" -exec rm -rf {} \;
上記の例は、「/tmp/」フォルダ以下の、「.svn」フォルダを削除する。
複数ファイルから特定の文字列を検索 †
# find /home/ -type f -name "*.*" | xargs grep -n "hoge"
上記の例は、/home/の中の.phpのファイルから「hoge」という文字を含むファイルを抽出する。
ディレクトリ内のファイル数を数える †
# find /tmp/ -type f | wc -l
ディレクトリ内のディスク使用量を再帰的に表示 †
# du /home/ -m
オプションの-m はメガバイト単位の表示
システム関連 †
プロセス表示 †
# ps aux
特定のプロセス表示 †
# ps -ef | grep mysqld &br; # ps -ef | grep httpd
コマンドをバックグラウンドで実行する †
# sh /home/hoge/test.sh &
コマンドの最後に、「&」をつける
サーバー文字コード表示 †
# echo $LANG
サーバーの容量確認 †
# df -Th
ユーザー一覧を表示 †
# cut -d: -f1 /etc/passwd
サーバーの時間合わせ †
# date -s "2008/06/24 19:48: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 -
でルート権限のユーザーに切り替える
※- (ハイフン) オプションの意味は、『シェルをログインシェルに』。