Linuxコマンドチートシート
scp
scpコマンドでリモートサーバに接続してアップロードやダウンロードすることが出来ます。
GUIツールだとWinSCPが有名です。
scpでアップロード
リモートサーバ(ホスト名:remotehost)にアップロードする例です。
1 |
scp a.jar remotehost:/tmp/. |
このコマンドで、remotehostサーバの/tmp配下にa.jarを配置することが出来ます。
scpでダウンロード
リモートサーバ(ホスト名:remotehost)からダウンロードする例です。
1 |
scp remotehost:/tmp/a.jar ./ |
このコマンドでremotehostサーバの/tmp配下のa.jarを、コマンドを叩いた場所(上記ではカレントディレクトリ)にダウンロードすることが出来ます。
historyでコマンド履歴参照
historyコマンドでコマンドの履歴を参照できます。
641 export xxxx | |
642 aws secretsmanager get-secret-value –secret-id hoge –query SecretBinary –output text | base64 -d > hoge.pem | |
643 exit | |
644 ls -la | |
645 history |
上記のように過去のコマンドが表示されて、!番号とすれば実行することが出来ます。
mvで移動
mvコマンドは移動させるコマンドです。
1 |
mv a.txt /tmp/. |
これでa.txtを/tmp配下に移動させることが出来ます。
tailでログファイルを参照
アクセスログなど常に出力されるログファイルを見たい場合は、catやviewよりtailコマンドで参照すれば末尾のログが常に見えて便利です。
1 |
tail -500f /opt/tomcat/logs/catalina.out |
-30f
とすると、末尾30行をモニタリングしていきます。
tailコマンド結果をgrep
tailコマンドでモニタリングしても、ログ出力量が非常に多い場合などの場合、tailコマンドでログを追えません。そういう場合はgrep –line-bufferedオプションを使用してログをgrepします。
1 |
tail -100f hoge.log | grep --line-buffered "20150101" |
20150101という文字列の行だけモニタリングできるようになります。
grep --line-buffered
の詳細については「Linuxのtailコマンドで指定した文字でフィルターする方法」を参照ください。
psでプロセス確認
psコマンドでプロセスを確認することが出来ます。
1 |
ps axuw | grep java |
dateで形式指定
dateコマンドで出力方法をISO8601形式にしたり色々指定ができます。
1 2 3 4 5 6 7 8 9 10 |
$ date --iso-8601 2015-11-10 $ date --iso-8601='seconds' 2015-11-10T08:27:48+0900 $ date --iso-8601='minutes' 2015-11-10T08:27+0900 $ date --iso-8601='hours' 2015-11-10T08+0900 $ date --iso-8601='ns' 2020-11-10T08:55:04,941599660+0900 |
dateでエポックタイムに変換
現在時刻をエポックタイムに変換します。
1 2 |
$ date +%s 1447154040 |
–dateオプションで時刻を指定してエポックタイムに変換することもできます。
1 2 |
$ date --date='2015-11-10T20:14:00+09:00' +%s 1447154040 |
〇分前の時間を指定したりすることもできます。
–date=’3minutes ago’オプションを指定すれば現在日時から3分前になります。
1 2 3 4 5 6 |
$ 3分前 $ date --date='3minutes ago' 2021年 1月 21日 木曜日 14:24:07 JST $ #エポックタイム $ date --date='3minutes ago' +%s 1611206656 |
egrep
egrepコマンドでgrep(拡張版)を行うことができます。grep -E
と同じです。
1 |
egrep '対象文字列' ファイル |
具体的には以下のような感じです。
1 |
egrep '2020/11/17' /home/ec2-user/a.log |
-Aオプションを指定してマッチした行から指定した行数後ろを表示します。
以下ではマッチした行から30行後ろを表示します。
1 |
egrep '2020/11/17' -A30 /home/ec2-user/a.log |
cut
cutコマンドで必要な文字だけ出力したり加工したりすることが出来ます。
-bオプションで指定した数値。基底値は1です。
1 2 3 4 5 6 7 |
$ echo 12345678901234567890 | cut -b1- 12345678901234567890 $ echo 12345678901234567890 | cut -b0- cut: フィールドと位置は1から始まる番号です Try 'cut --help' for more information. $ echo 12345678901234567890 | cut -b2- 2345678901234567890 |
xxdで16進数表記する
xxdコマンドで16進表記にすることができます。オプションの詳細はxxd -h
です。
xxd -pで行います。
1 2 |
$ echo HOGE | xxd -p 484f47450a |
戻すときは-rオプション(reverse)をつけて戻すことができます。
1 2 |
$ echo 484f47450a | xxd -p -r HOGE |
zipinfo
「Linuxコマンドのzipinfoでwarファイルの中身を見る」を参照下さい。
jar
「Linuxコマンドのjarでjavaファイル一覧を表示する」を参照ください。
less
「Linuxコマンド わかりやすくless」を参照下さい。
md5sum
「Linuxコマンドのmd5sumをわかりやすく説明する」を参照下さい。
rm
「rmコマンドで削除確認をせずにファイル削除する」を参照ください。
curl
「curlチートシート」を参照ください。
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^