Edited at

最近SSHで作業するときにこれでもかと使っていても覚えられないターミナルコマンドの覚え書き

More than 1 year has passed since last update.

最近サーバーにAWSを利用する事も多くなってきてSSHを使ってターミナルでコマンドラインを打つ事が多くなってきたフロントエンドエンジニアが、これまで何度も使っているにも関わらずよく忘れてしまうコマンドをここに記す


基本


サーバーの稼働状況を確認する

$ top


参考



ファイル/フォルダの所有者を変更する

$ chown ユーザー名:グループ名 ファイル名


再帰的そのディレクトリの中身の所有者を変更する場合

$ chown -R ユーザー名:グループ名 ファイル名


参考



ディレクトリのパーミッションを一括で変更する

find /path/to/dir -type d -exec chmod 755(パーミッション) {} +


参考



フォルダ丸ごとコピーする

$ cp -r コピーするフォルダ コピー時のフォルダ名



サブディレクトリも一緒に作成する

$ mkdir -p フォルダパス



ユーザーを作成する

$ adduser -u ユーザー -g グループ名 -d ホームディレクトリ -s ログインシェル ユーザ名


Apache


Apacheの起動・停止・再起動

$ apachectl start

$ apachectl stop

$ apachectl restart


緩やかに再起動

サーバーをすぐに停止できないときはこちら。

クライアントの接続がなくなったら再起動する。

$ apachectl graceful


httpd.confのエラー確認

$ apachectl configtest



git


リモートリポジトリを作成する

$ git init --bare --shared=true


差分を抽出してzipファイルで保存する

$ git archive [コミットID] `git diff --name-only origin/master [コミットID] --diff-filter=ACMR` -o [zipファイル名].zip



MySQL


MySQLに接続する

$ mysql -hホスト名 -uユーザー名 -pパスワード


データベースを指定して接続

$ mysql -hホスト名 -uユーザー名 -pパスワード データベース名


sqlファイルからデータベースをインポートする

$ mysql -hホスト名 -uユーザー名 -pパスワード データベース名 < インポートファイル.sql


データベースをエクスポートする

$ mysqldump -hホスト名 -uユーザー名 -pパスワード データベース名 > 保存するファイル名


PostgreSQL


PostgreSQLにアクセスする

$ psql -U ユーザー名 データベース名


sqlファイルからデータベースをインポートする

$ DB名=> \i /path/to/sql/import.sql


データベースの操作を終了する

$ DB名=> \q