システムの停止と再起動
今すぐ停止は
# shutdown -h now
今すぐ再起動は
# shutdown -r now
テキストファイルを行単位で並べ替える
オプション
-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
ファイルを分割する
「file」を8行ごとに分割
# split -8 file new_
ファイル確認
# ls file new_aa new_ab new_ac
分割されたファイルの前半部分は「new_」となり、その後に「aa」~「ac」が振られていく。
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
ユーザのチェンジ
一般ユーザから root へ
$ su -
root から変更前の一般ユーザへ戻る(または、ログアウト)
# exit
root から任意の一般ユーザ ( linux ) へ
# su - linux
su できない nologin ユーザ ( nologinuser ) へ
# su -s /bin/bash - nologinuser
( # は root の印、$ は一般ユーザの印)
サービスの設定管理をする
サービス一覧
# 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 file.txt
オプション
-s 区切り文字:区切り文字を指定する。
ファイルを書庫化・展開する
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 newfile
タイムスタンプを変更する
ファイルのタイムスタンプを現在の時刻に変更する。
# touch file
オプション
-t :指定した日時に変更する。書式は、[[CC]YY]MMDDhhmm[.ss]
[ ]内は省略可能。「MMDDhhmm」は「月・日・時・分」をそれぞれ2桁で表示するという意味で、月の前に2桁追加すると西暦の下2桁、という意味になる。
連続する同じ内容の行をまとめる
連続する同じ行がある場合それらを削除して表示することができる。
オプションを使用することで、いろいろな表示方法を選べる。
# 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 ?