WAVE Log
shutdown

システムの停止と再起動

今すぐ停止は

# shutdown -h now

今すぐ再起動は

# shutdown -r now

sort

テキストファイルを行単位で並べ替える

オプション
-n:数値として並べ替える。
-r:降順に並べ替える。(指定しない場合は昇順)
-t 文字:指定文字を区切り文字とする。(デフォルトは空白)
-k 数値1(,数値2):数値1番目のフィールドから数値2番目のフィールドをキーとする。(先頭フィールドは1)

# cat list.txt yuna 95 runa 32 honoka 44 hinata 74 mao 19 haruna 89 kanon 65 mana 55 haruka 100 nanami 82

に対して、

# sort -n -r -k 2,2 list.txt haruka 100 yuna 95 haruna 89 nanami 82 hinata 74 kanon 65 mana 55 honoka 44 runa 32 mao 19

# sort -k 1,1 list.txt haruka 100 haruna 89 hinata 74 honoka 44 kanon 65 mana 55 mao 19 nanami 82 runa 32 yuna 95

複数の列をもとにデータを並べ替える

# cat list.txt yuna 5 runa 2 honoka 3 hinata 3 mao 1 haruna 4 kanon 3 mana 3 haruka 5 nanami 4

に対して、
第2フィールドを数値として降順に並べ替え、同じになったものを第1フィールドで並べ替える

# sort -k 2nr,2 -k 1,1 list.txt haruka 5 yuna 5 haruna 4 nanami 4 hinata 3 honoka 3 kanon 3 mana 3 runa 2 mao 1

split

ファイルを分割する

「file」を8行ごとに分割

# split -8 file new_

ファイル確認

# ls file new_aa new_ab new_ac

分割されたファイルの前半部分は「new_」となり、その後に「aa」~「ac」が振られていく。

ssh-keygen

SSH の公開鍵と秘密鍵を作成

# ssh-keygen -t rsa -b 4096 -C "" Generating public/private rsa key pair. Enter file in which to save the key (/home/user/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/user/.ssh/id_rsa. Your public key has been saved in /home/user/.ssh/id_rsa.pub. The key fingerprint is: SHA256:zQCfC3+ezXNbyjB+0r+XsfV8uMuhq1qqAiM4FDDe0L0 The key's randomart image is: +---[RSA 4096]----+ |+.. . . | |.oo. . o . | | ... o + | | . E o = | |o S + | |+ o o + ..| | o o + *.ooB| | . o ..O+B=| | ...o...++B==| +----[SHA256]-----+

オプション
-t 方式:作成する鍵の暗号化形式を指定する。
-b ビット数:作成する鍵のビット数を指定する。
-C コメント:コメントを指定する。「-C ""」でコメントを削除。(デフォルトは「ユーザー名@ホスト名」)

オプションなしのデフォルト値では。↓

# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/user/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/user/.ssh/id_rsa. Your public key has been saved in /home/user/.ssh/id_rsa.pub. The key fingerprint is: SHA256:ItXlRCbefj/pVMC0dC58JEZBvaBQn1+nrHoYs3yzwZg user@localhost.localdomain The key's randomart image is: +---[RSA 3072]----+ | ..*. oOoo| | o O .B.*.| | . o + .oB *| | . . . ..*o| | . . S . . o..| | . . o= o o | | .E=+ = | | +.++ . | | .o.o. | +----[SHA256]-----+

デフォルト値やオプションで選択できる値などは、ssh のバージョンにより異なることがある。

# ssh -V OpenSSH_8.1p1, OpenSSL 1.1.1d FIPS 10 Sep 2019

# man ssh-keygen

su

ユーザのチェンジ

一般ユーザから root へ

$ su -

root から変更前の一般ユーザへ戻る(または、ログアウト)

# exit

root から任意の一般ユーザ ( linux ) へ

# su - linux

su できない nologin ユーザ ( nologinuser ) へ

# su -s /bin/bash - nologinuser

( # は root の印、$ は一般ユーザの印)

systemctl

サービスの設定管理をする

サービス一覧

# systemctl list-unit-files --type=service

サービス起動

# systemctl start [name]

サービス停止

# systemctl stop [name]

サービス再起動

# systemctl restart [name]

サービスリロード

# systemctl reload [name]

サービスステータス表示

# systemctl status [name]

サービス自動起動有効

# systemctl enable [name]

サービス自動起動無効

# systemctl disable [name]

サービス自動起動設定確認

# systemctl is-enabled [name]

サービス自動起動有効+起動

# systemctl enable --now [name]

tac

テキストファイルの内容を逆順に表示

テキストファイルの内容を区切り文字を基準に逆順に表示する。
デフォルトでは区切り文字は改行文字なので行単位で逆順に表示される。

# tac file.txt

オプション
-s 区切り文字:区切り文字を指定する。

tar

ファイルを書庫化・展開する

arc_dirディレクトリ以下を書庫ファイル(arc.tar)にする

# tar -cvf arc.tar arc_dir

書庫ファイルを展開する

# tar -xvf arc.tar

書庫ファイルの内容を一覧する

# tar -tf arc.tar

書庫ファイルからarc_dir/readme.txtファイルのみを削除する

# tar -vf arc.tar --delete arc_dir/readme.txt

オプション:
-c:書庫を新規に作成する
-f ファイル名:指定した書庫ファイルまたはデバイスを使用する。初期値は/dev/rmt0
-t:書庫の内容を表示する
-v:処理したファイルの一覧を詳細に表示する
-x:書庫からファイルを取り出す
--delete:書庫内からファイルを削除する

解凍コマンド

展開するファイルの拡張子が .tar.gz または .tgz の場合

# tar -zxvf file.tar.gz

touch

空のファイルを作る

ファイルがない場合に空のファイルが作られる(ファイルがある場合は何もしない)

# touch newfile

タイムスタンプを変更する

ファイルのタイムスタンプを現在の時刻に変更する。

# touch file

オプション
-t :指定した日時に変更する。書式は、[[CC]YY]MMDDhhmm[.ss]
[ ]内は省略可能。「MMDDhhmm」は「月・日・時・分」をそれぞれ2桁で表示するという意味で、月の前に2桁追加すると西暦の下2桁、という意味になる。

uniq

連続する同じ内容の行をまとめる

連続する同じ行がある場合それらを削除して表示することができる。
オプションを使用することで、いろいろな表示方法を選べる。

# cat sample.txt Hello World ! Hello World ! Hello World ! Hello World ! How are you ?

に対して
連続する行をまとめて表示

# uniq sample.txt Hello World ! How are you ?

連続する同じ行がいくつあるか表示

# uniq -c sample.txt 4 Hello World ! 1 How are you ?

連続する同じ行のみ表示

# uniq -d sample.txt Hello World !

1度しか現れない行のみ表示

# uniq -u sample.txt How are you ?