Linuxコマンド集

WEB開発でよく使うLinuxコマンドについての覚書です。

■ 特定のディレクトリ内の文字列を検索

#検索
grep -n 'something' */*

上記コマンドで、somethingという文字列を検索します。n オプションで行数を表示します。wオプションで単語単位の検索が可能。

なお、ルート以下等の現ディレクトリ以下を検索する場合(r オプション)

#-rオプションで再帰的に検索
grep -nr 'words' *

また、カレントディレクトリ以下すべての検索

#findでカレントディレクトリ以下を検索
find | xargs grep -n 'words'

 

■ 特定のディレクトリ内の文字列を置換

#置換
find */* | xargs perl -pi -e 's/old/new/g'

上記コマンドで、文字列 old を new に置換します。意外と危険なので、事前にバックアップを取ること。

 

■ ディレクトリのコピー(バックアップ)

#コピー
cp -r somedir1 somedir2

-r オプションで、ディレクトリ内を再帰的にコピーします。

 

■ 特定のディレクトリ内で再帰的にパーミッションを変更

#ファイルのみ変更
find . -type f -print | xargs chmod 604

#ディレクトリのみ変更
find . -type d -print | xargs chmod 705

上記コマンドで、ファイルのみ、又は、ディレクトリのみに限定して、一気にパーミッションを変更します。

■ 最近更新したファイルを表示

#更新日を基準にファイル表示
find . -mtime -7 -ls

上記コマンドでは、特定ディレクトリ内で、7日以内に更新したファイルを表示します。-ls オプションを付けることにより、詳細情報が表示されます。

 

■ ファイル名を検索してファイルを表示

#特定のファイル名(sample.php)を検索
find . -name sample.php -ls

上記コマンドでは、カレントディレクトリ以下から、特定のファイル名を有するファイルを表示します。-ls オプションを付けることにより、詳細情報が表示されます。

 

■ 文字入力を補完(Tabキー)

lsで表示したディレクトリ内に移動するには、cdコマンドで当該ディレクトリを入力しますが、識別可能な最初の何文字かを入力して、Tabキーを押すと、そのディレクトリ名が補完され入力されます。ディレクトリ名が長い場合に重宝します。

 

■ ファイルを実行する(CORESERVER/XREAサーバーなど)

shファイルを実行する

#/bin/sh に続けてshファイルまでの絶対パス
/bin/sh /virtual/account/path_to_file.sh

PHPファイルを実行する

#/usr/local/bin/php に続けてphpファイルまでの絶対パス
/usr/local/bin/php /virtual/account/path_to_file.php

 

■ コマンドのパスを調べる

which mysql

whichコマンドで、調べたいコマンドのパスを確認することができます。上記では、mysqlコマンドの実行パスを確認できます。

 

■ サイトのIPアドレスを確認する

 nslookup exmaple.com

nslookupコマンドを使うと、ホスト名から正引きでIPアドレスを確認できます。
ホスト名・・・exmaple.com
IPアドレス・・・123.456.789.***

■ WEBサイトの特定のディレクトリを取得する

wget -r -np  http://example.com/somedir/

r オプションは再帰処理。npオプションは親ディレクトリを無視。
r オプション単独だと、サイトの全部を取得してしまうので要注意。
途中で停止するには、「Ctrl」+「Z」による。Zは大文字。

 

■ 特定のディレクトリ内のファイル数(f)・ディレクトリ数(d)を表示

find ./ -type f | wc -l
find ./ -type d | wc -l

 

■ 特定のディレクトリ内のサイズを表示

du ./

 

■ 複数ディレクトリの行数(l)・文字数(m)を調べる

wc -l `find ./ -type f`
wc -m `find ./ -type f`

■  実行したLinuxコマンドを中止・中断する

Ctrl+Z

以上です。

広告

コメントを残す

メールアドレスが公開されることはありません。