早く知りたかったLinuxコマンドのお話1
LPICって重要ですね、
勉強して感じたことは。。。
『Linux触って半年したくらいのタイミングで勉強しておけばよかった!!』
ってことです。
知らなくて後悔したコマンドたちを徒然なるままに書いていきます。
コマンドの特殊な記号
<コマンド1> ; <コマンド2>
コマンド1の結果に関係なくコマンド2を実行する
<コマンド1> && <コマンド2>
コマンド1が正常終了したらコマンド2を実行する
<コマンド1> || <コマンド2>
コマンド1が失敗したらコマンド2を実行する
( <コマンド1> ; <コマンド2> )
コマンド1とコマンド2を1つのコマンドとして実行
{ <コマンド1> ; <コマンド2> }
コマンド1とコマンド2を1つのシェルで実行
引用符
'(シングルクオーテーション)
囲まれた文字をすべて文字列として扱う
"(ダブルクオーテーション)
囲まれた文字を文字列として扱うが、変数は展開する
`(バッククオーテーション)
囲まれた文字をコマンドとして展開する
[root@localhost ~]# echo "'date'コマンドの結果は`date`です"
'date'コマンドの結果はSat Jun 17 00:31:33 PDT 2017です
bashの履歴管理
・historyコマンドで過去のコマンド履歴を表示できる
・!<数字>でhistoryで出した番号のコマンドを予備だせる
・!<文字列>で文字列から始まるコマンドを再度呼び出せる
・!?<文字列>で文字列を含むコマンドを再度呼び出せる
・!!で直前のコマンドを実行
マニュアル
manコマンドの仕様が以外と深い
man (Option) (Section) <コマンド名>
(Option)
-a
すべてのセクションのマニュアルを表示
-f
キーワードに完全一致するコマンドを表示
-k
キーワードに部分一致するコマンドを表示
-w
マニュアルの置かれているディレクトリを表示
(マニュアルの項目)
NAME
名前
SYNOPSIS
書式
DESCRIPTION
説明
OPTIONS
コマンドオプションの説明
FILES
設定ファイルの説明
BUGS
バグ情報
SEE ALSO
関連情報
AUTHOR
著者
これ以外にもいろいろあり
(セクション)
マニュアルにはセクションという章がある?
1
ユーザコマンド(いちばんよく使う)
2
システムコール(?)
3
ライブラリ
4
デバイスファイル(?)
5
設定ファイル(よく使う!)
6
ゲーム(????)
7
その他(?)
8
システム管理コマンド
9
カーネル用ドキュメント?
[root@localhost ~]# man -w passwd
/usr/share/man/man1/passwd.1.gz
マニュアル自体の検索もできる
whatis(完全一致)
[root@localhost ~]# whatis passwd
passwd (1) - update user's authentication tokens
sslpasswd (1ssl) - compute password hashes
passwd (5) - password file
apropos(部分一致)
[root@localhost ~]# apropos passwd
chpasswd (8) - update passwords in batch mode
fgetpwent_r (3) - get passwd file entry reentrantly
getpwent_r (3) - get passwd file entry reentrantly
gpasswd (1) - administer /etc/group and /etc/gshadow
grub2-mkpasswd-pbkdf2 (1) - Generate a PBKDF2 password hash.
kpasswd (1) - change a user's Kerberos password
lpasswd (1) - Change group or user password
lppasswd (1) - add, change, or delete digest passwords.
pam_localuser (8) - require users to be listed in /etc/passwd
passwd (1) - update user's authentication tokens
sslpasswd (1ssl) - compute password hashes
passwd (5) - password file
passwd2des (3) - RFS password encryption
pwhistory_helper (8) - Helper binary that transfers password hashes from passwd or shadow to opasswd
saslpasswd2 (8) - set a user's sasl password
smbpasswd (5) - The Samba encrypted password file
vncpasswd (1) - change the VNC password
cpコマンドの-aオプションが最強
-f
上書き設定
-i
上書きを確認する
-p
権限設定を引き継ぐ
-r,R
再帰的にコピーする
-d
シンボリックリンクをそのまま複製
-a
d + p + R
難しいけど。。。{}がかなり有用!
[root@localhost test]# ls
[root@localhost test]# touch file{1,2}
[root@localhost test]# ls
file1 file2
[root@localhost test]#