開発していてよく使うorたまに使うコマンドを集めました。
一部linuxコマンドから外れるものもありますが便利なので加えてます。ご容赦を
通信
ssh
暗号化通信するコマンド
よく使うオプションは-i
-p
ssh -p 4649 -i .ssh/hogehoge.pem ec2user@10.254.142.33
# ssh <ログインするユーザー名>@<アクセス先IP>
# アクセスする際の認証ファイル`-i`
# ssh接続デフォルトのポート(22)以外を指定
権限
chmod
権限の変更
chmod 600 hoge.pem
ls -la
# -rw-------@
600
で所有者のみread+write権限を設定する
EC2などのpemキーなどの認証ファイルをセキュアにする設定する時によく使う
アプリケーションのログファイルに関するエラー(permission denied
)の時は逆に権限を広くする
chmod -R 777 ./storage
# -Rでフォルダ内全ファイルの権限設定
日時確認
2022年 8月30日 火曜日 22時55分31秒 JST
みたいに日時を表示できます。
$ date
ファイル監視
less
リアルタイムでファイル表示(単体)
ファイル内容を1画面分ずつ表示するコマンド
オプションをつけることでリモート環境のログファイルを監視する時とかに役立つ
less laravel.log
ファイル出力中にshift F
でファイル監視モードに入れる(ctr C で監視解除)
最初から監視モードで開きたい時は下記
less +F laravel.log
tail
ファイル末尾表示
ファイルの末尾(デフォで10業)を表示
-f
オプションででファイル監視できるが、lessのように監視モードの切り替えができない
ただ、複数ファイルの監視をしたい時は時には以下のようにして使える
tail -f *log
コマンド実行
cron
定期実行
# 編集
crontab -e
# 左から 分/時/日/月/曜日 で設定
*/3 * * * * sh date.sh
# 設定の確認
cron -l
インストール方法などはこちらを参考に
設定しても実行されない時は下記コマンドで再起動
sudo systemctl restart cron
一定間隔でコマンド実行
cron設定するほどでないケースで繰り返し実行したい時に便利
watch -n 5 date
# 5秒間隔で日時表示
ファイル操作
mv ファイル移動
タッチパッド操作での移動が煩わしいケースではmvが便利
mv ./*.png ./images/
# カレントディレクトリの.pngファイルをimagesフォルダへ移動
# カレントディレクトリの全ファイルをimagesフォルダへ移動
mv ./* ./images/
zip
ファイル圧縮
フォルダ指定してファイル圧縮する。
zip -r [output file name] [target folder]
# ex) zip -r abc.zip ./abc
unzip
ファイル解凍
unzip [file name]
# 解凍先を指定
unzip [file name] -d [target folder]
インストール
brew
開発者ならお馴染みのhomebrew
端末にデフォルトで備わってないコマンドをインストールするときにも使える
brew install tree