↑
一般ユーザの作成と削除
一般ユーザ名:linux を作成する場合
ログインできないユーザ linux を作成する場合
んで、パスワード設定をする
削除は
-r というオプションを付けることでホームディレクトリの /home/linux も削除される
↑
ログイン可不可の変更
ユーザ linux をログインできないようにする
ユーザ linux をログインできるようにする
↑
パスワードを変更する
一般ユーザ(linux)のパスワードを変更する
↑
ユーザのチェンジ
一般ユーザから root へ
root から変更前の一般ユーザへ戻る(または、ログアウト)
root から任意の一般ユーザ ( linux ) へ
su できない nologin ユーザ ( nologinuser ) へ
( # は root の印、$ は一般ユーザの印)
↑
システムの停止と再起動
今すぐ停止は
今すぐ再起動は
↑
MACアドレスを知る
(etherの値がMACアドレス)
↑
ファイルの一覧表示
自分がアクセスしているディレクトリ内のファイルを一覧表示する
隠しファイルを含むすべてのファイルを表示する
属性も表示させる
すべてのファイルの情報を詳細に表示する
↑
現在自分がアクセスしている場所(ディレクトリ)を表示する
↑
アクセスするディレクトリを移動する
/root にいる状態から /home/linux に移動する
cd コマンドだけ実行するとホームディレクトリへもどる
↑一般ユーザ ( linux ) だと /home/linux にもどる
↑ root だと /root にもどる
↑
空のファイルを作る
ファイルがない場合に空のファイルが作られる(ファイルがある場合は何もしない)
ファイルがある場合には空のファイルに置き換わる
オプション
-n :行末の改行を行わない
↑
タイムスタンプを変更する
ファイルのタイムスタンプを現在の時刻に変更する。
オプション
-t :指定した日時に変更する。書式は、[[CC]YY]MMDDhhmm[.ss]
[ ]内は省略可能。「MMDDhhmm」は「月・日・時・分」をそれぞれ2桁で表示するという意味で、月の前に2桁追加すると西暦の下2桁、という意味になる。
↑
ディレクトリを作る
ディレクトリ (test) を作る
存在しない test ディレクトリ内に sub ディレクトリを作成する
-p :ディレクトリが存在していてもエラーを返さない。必要に応じて親ディレクトリを作成する。
↑
ファイル,ディレクトリの削除
削除確認なしにする
↑
ファイル,ディレクトリの名前変更と移動
名前を変更する。(test1→test2)
移動する。(test1→user/newdir/test1)
オプション
-f :同名ファイルがある時も上書きの確認の問い合わせなく上書きをする
↑
コピーする
【ファイルをコピーする】
違う名前で同一ディレクトリにコピーする。(file1 を file2 という名前で複製)
現行ディレクトリのファイルを別のディレクトリにコピーする。(file1 → user/newdir/file1)
コピー先ファイル名を「.」にすると、現在アクセスしているディレクトリにコピーされる。
↑「/usr/local/」ディレクトリにある「test.txt」ファイルが現在アクセスしているディレクトリにコピーされる。
オプション -p を使うと、ファイルの所有者,タイムスタンプ,アクセス権限などの情報もコピーされる。
【ディレクトリごとコピーする】
dir1 ディレクトリ以下をすべて dir2 にコピーする。
【なるべく“そっくりそのまま”コピーする】
「file1」を「file2」にコピーする。ファイルの属性はなるべく保持され、シンボリックリンクはそのままコピーされる。
「dir1」を「dir2」にコピーする。ディレクトリの内容もそのままコピーされる。
file.conf.orig というファイル名のコピーを作成する。
↑
シンボリックリンクの作成
オプション -s :作成するリンクがシンボリックリンクであることを表す
リンク元とリンク先の順番は cp コマンドなどと同じ
↑
ファイル,ディレクトリの所有者,グループを変更する
file の所有者を user1 にする。
file の所有者を user1 ,所有グループを linux にする。
↑所有者だけでなくグループ所有権も同時に指定する場合には、それらを : で並べる。
所有者,グループ所有権とも同じにする場合( user1 )は、以下でも可。
オプションに -R を指定し、ファイル名にディレクトリを指定した場合には、そのディレクトリ以下の全てのファイルに対して同じ所有者,グループ所有権が設定される。
↑/var/www/html ディレクトリ以下にある全てのファイルの所有者を root に、グループを www に変更する。
↑
ファイル,ディレクトリのアクセス権限を変える
file の所有者に読み・書き・実行権限 ( 4+2+1=7 ) を、グループとその他に読み取り権限 ( 4 ) を与える。
オプションに -R を指定し、ファイル名にディレクトリを指定した場合には、そのディレクトリ以下の全てのファイルに対して同じ設定が行われる。
同じ拡張子のファイルをまとめて設定するには、 * を使う。
↑拡張子が cgi のファイルを全て 755 に変更
ファイル | ディレクトリ | |
---|---|---|
「r」読み(4) | ファイルの内容を表示(catコマンドなど) | ディレクトリ内のリスト表示(lsコマンドなど) |
「w」書き(2) | ファイルの内容を編集 | ディレクトリ内にファイル作成や削除 |
「x」実行(1) | 実行ファイルの実行 | そのディレクトリに移動(cdコマンド) |
↑
サービスの設定管理をする
サービス一覧
サービス起動
サービス停止
サービス再起動
サービスリロード
サービスステータス表示
サービス自動起動有効
サービス自動起動無効
サービス自動起動設定確認
サービス自動起動有効+起動
↑
ファイアウォールの設定管理をする
サービスの状態確認
アクティブゾーンの確認
public ゾーンの恒久的な設定の確認
登録可能なサービス名一覧
サービスの追加(public ゾーンに対して、http を恒久的な設定として追加する)
設定を反映させる
ポート番号の追加(public ゾーンに対して、8080/tcp を恒久的な設定として追加する)
許可アドレスの追加(public ゾーンに対して、恒久的な設定として追加する)
拒否アドレスの追加(「drop」ゾーンに対して、追加することで拒否 IP アドレスとなる)
設定の削除は、「--add」の部分を「--remove」にする。
↑
ネットワークの設定管理をする
インタフェースおよびステータスを表示
個別インターフェースのパラメータ一覧表示
固定 IPv6 アドレスを設定
デフォルトゲートウェイを設定
DNS サーバの設定
設定反映
↑
cat コマンド
内容が短いファイルの中身を表示する。
リダイレクション
> 標準出力をファイルにする(コピー)
>> 標準出力をファイルに追加する
↑
htpasswd コマンド
.htpasswd ファイルを新規作成する。パスワードを MD5 でハッシュする。
既存の .htpasswd ファイルへユーザーを追加する。パスワードを MD5 でハッシュする。
パスワードを bcrypt コスト 10 でハッシュし標準出力する。
オプション
-b:パスワードを、対話式入力ではなくて、コマンドライン引数として指定できるようにします。パスワードはコマンドラインで見えるため、履歴に残るので注意。
-c:新しいパスワードファイルを作成します。もし、同名のパスワードファイルがすでに存在する場合は、既存の内容が削除されます。上書きされたくなければ -c を取って、ファイル名を指定します。
-m:パスワードを MD5 でハッシュします。
-n:どのような結果になるかのみを標準出力して終了します。パスワードファイルを作りません。
-B:パスワードを bcrypt でハッシュします。これは現在、非常に安全であると考えられています。
-C:-B(bcrypt)との組み合わせでのみ許可されます。ストレッチング回数(コスト)を設定します。数を増やすと安全ですが処理時間が遅くなります。デフォルト:5、有効:4〜17。
-D:ユーザーを削除します。指定された .htpasswd ファイルにユーザー名が存在する場合、削除されます。
-v:パスワードを照合します。指定されたパスワードが、指定された .htpasswd ファイルに保存されているユーザーのパスワードと一致することを確認します。
バージョンによってオプションやデフォルト値が異なるので、Usage を確認。
↑
秘密鍵と自己署名証明書を作成
秘密鍵と自己署名証明書を一括で作成
秘密鍵の内容を確認
証明書の内容を確認
↑
SSH の公開鍵と秘密鍵を作成
オプション
-t 方式:作成する鍵の暗号化形式を指定する。
-b ビット数:作成する鍵のビット数を指定する。
-C コメント:コメントを指定する。「-C ""」でコメントを削除。(デフォルトは「ユーザー名@ホスト名」)
オプションなしのデフォルト値では。↓
デフォルト値やオプションで選択できる値などは、ssh のバージョンにより異なることがある。
↑
メモリの使用状況を表示する
オプション
-m:メモリ使用量をメガバイト単位で表示
空きメモリ量は、available の値
↑
現在登録されているユーザ情報を確認する
1行で1ユーザとなります。「:」(コロン)がフィールド区切りで、各フィールドの意味は下記の通りです。
第1フィールド:ログイン・ユーザ名。
第2フィールド:パスワード用のフィールド。シャドウ・パスワードという機能が有効になっているため、ここにはパスワードは表示されず「x」という文字が記述されている。
第3フィールド:ユーザ番号。
第4フィールド:グループ番号。
第5フィールド:コメント欄(ユーザーのフルネームなどを記述する)。
第6フィールド:ホーム・ディレクトリ(ユーザーがログインしたときの最初のディレクトリ)。
第7フィールド:ログイン・シェル(ユーザーがログインすると、ここに記述したシェルが起動する)。
↑
システムで実行しているプロセスを表示する
a:自分以外のユーザーのプロセスも表示する
u:ユーザ名,CPU占有率,メモリ占有率,開始時刻などを表示
x:制御端末のないプロセス(デーモンなど)の情報も表示する
w:表示内容が長い場合に、w ひとつあたり1行分表示行を増やす。
表示されるそれぞれの要素の意味は以下の通りです。
USER:所有するユーザ名
PID:プロセスID
%CPU:CPU時間と実際に処理した時間の比率
%MEM:実メモリの使用量
VSZ:仮想メモリの全サイズ
RSS:使用中の物理メモリ量
TTY:制御端末の種類及び番号
STAT:プロセス状態
R 実行中 (running)
S 休眠中 (sleeping)
D 割込み不可能な休眠中
T 停止中かトレース中
Z ゾンビプロレス
W スワップ・アウトしたプロセス
N ナイス値が正であることを表す
START:開始時刻
TIME:実行時間
COMMAND:プロセスのコマンド名
↑
プロセスおよびジョブを終了させる
プロセスID pid のプロセスを終了する
だめなら、強制終了
↑
dnf コマンド
パッケージの新規インストール
パッケージのアンインストール
アップデート可能なパッケージの一括アップデート
パッケージグループ名を英語で一覧表示する
グループ単位のインストール
キーワードでパッケージを検索
ファイル名からパッケージ名を逆引き
↑
RPM コマンド
rpm パッケージのファイル名を package-3.5-1.i386.rpm とすると、
(package=ファイル名,3=バージョン,5-1=リリース番号,i386=プラットホーム)
詳細情報(v),進行状況(h)を表示してインストール(i)する。
パッケージがインストールされているかの問い合わせ。
↑インストールされていれば、バージョンも表示される。
古いバージョンがインストールされている場合はアップグレードし、古いバージョンがインストールされていない場合はインストールする。
古いバージョンがインストールされている場合のみアップグレードする場合は
↑
wget コマンド
http://www.example.co.jp/tmp/file.zip をダウンロードする
ユーザ認証が必要な Web サイトからダウンロードする場合
ユーザ認証が必要な FTP サイトの場合
※ myuserid がユーザ ID ,mypassword がパスワード
実行を中断するには…、
「Ctrl」+「c」キー
オプション:
-q : メッセージを表示しない。
-O [ファイル名] : 指定したファイル名で保存。
-N : ダウンロード対象と同名のファイルが既に存在する場合、更新時間を比較しローカル側に存在するファイルの方が古ければダウンロードして上書き保存する。但し、更新時間の比較は -O オプションと一緒に使うと無効となる。
↑
ファイルの文字コードを変換する
file をEUCコードで標準出力。
file をEUCコードにして file2 の名前で保存。
注)もとのファイルと、出力ファイルを同じ名前にしない
file の文字コードを UTF8コード,改行コードをLFにして file2 の名前で保存。
主なオプションは
-j : JISコードで出力
-e : EUCコードで出力
-s : シフトJISコードで出力
-w : UTF8コードで出力
※オプションを指定しない場合 -j になる。
改行コードを変更するオプションは
-Lu : unix(LF)の改行コードに変換
-Lw : windows(CR+LF)の改行コードに変換
-Lm : mac(CR)の改行コードに変換
入力する文字コードを指定するオプションは
-J : 入力がJISコード
-E : 入力がEUCコード
-S : 入力がシフトJISコード
-W : 入力がUTF8コード
※指定しなくても自動判定が効くが、誤判定のリスクを避ける意味でも、入力する文字コードが分かっている場合は明示的に指定した方がいい。
↑
ファイルやディレクトリを検索する( find , locate )
find (逐次検索)
[dir] ディレクトリの中から [file] ファイルを検索する
例:
更新日が30日以上古いファイルを削除する
locate (データベースから検索するので高速)
※locate ではデータベース更新後に作成されたファイルやディレクトリは検索できない。データベースを再更新するには updatedb コマンドを実行する。
↑
ファイルシステムのドライブ使用状況の表示
現在マウントされている全てのファイルシステムの使用状況を表示
-h:サイズに応じた単位で表示する
--total:合計も表示する
↑
ディレクトリ内のファイル容量を表示する
カレントディレクトリの容量を表示する
-h:サイズに応じた単位で表示する。
-s:指定されたディレクトリの合計のみ表示する。
↑
which と whereis
which:コマンドのパスを表示します
whereis:コマンドのパスとコマンドのソースファイルおよびマニュアルファイルのパスを表示します
↑
ファイルを書庫化・展開する
arc_dirディレクトリ以下を書庫ファイル(arc.tar)にする
書庫ファイルを展開する
書庫ファイルの内容を一覧する
書庫ファイルからarc_dir/readme.txtファイルのみを削除する
オプション:
-c:書庫を新規に作成する
-f ファイル名:指定した書庫ファイルまたはデバイスを使用する。初期値は/dev/rmt0
-t:書庫の内容を表示する
-v:処理したファイルの一覧を詳細に表示する
-x:書庫からファイルを取り出す
--delete:書庫内からファイルを削除する
↑
解凍コマンド
展開するファイルの拡張子が .tar.gz または .tgz の場合
展開するファイルの拡張子が .zip の場合
解凍先ディレクトリを指定する
ディレクトリが存在しなければ、bar ディレクトリは作成される。
↑
実行したコマンドの履歴を表示する
最近実行した10個の履歴を表示する場合は、以下のように入力する
表示された履歴の左側の数字はヒストリの番号で、
と入力することにより、その番号のコマンドを実行できる
※コマンド履歴を検索するには【Ctrl+r】
履歴を削除するなど history ファイルを編集
↑
2つのファイルの差分を得る
test1 と test2 ファイルの差分を表示
-s:共通な行を表示しない
-B:空行を挿入・削除するだけの違いは無視する
↑
文字列の置換をする
test.html というファイルの euc-jp という部分を UTF-8 に変える
-i はファイルを編集するオプション。
-e を指定した場合は、ファイルの変更はせずに標準出力に出力するだけになる。
区切り文字は「/」以外でも可。URL の「/」のエスケープをしなくてよくなる。「!」にした例。
変数の場合は「'」で囲む
連続するスペースを半角スペース一つにする。
行頭の連続するスペースを削除する。
同じ位置にある文字に置換する。(例:全角数字→半角数字)
最短マッチ(sed は最長マッチのため、否定の文字クラスを利用する。)
「"visits":123,」などが「"visits":0,」に置換される。「[^,]」は、「,」ではない文字。
↑
圧縮コマンド( zip )
単一ファイル ( target-file ) を ( file.zip に) 圧縮する
ディレクトリごと圧縮する場合は「-r」オプションを使用する
-q:動作中のメッセージを表示しない
-y:シンボリックリンクをたどらずに、シンボリックリンクのまま格納する
↑
文字列を検索する
ファイル内の文字列を検索して該当する行を表示する
拡張子が .txt のファイルにある「diff」という文字列を検索する場合
標準出力の結果を検索する
「ps aux」というコマンドを実行し、その結果から「telnet」という文字列を含む行を表示する場合
オプション
-c 該当行は表示せずに、該当した数を表示する
-h 複数ファイルを検索対象としたときに、結果でファイル名を表示しない
-i 大文字と小文字の区別をしない
-l 該当ファイル名だけを表示する
-L 該当しなかったファイル名だけを表示する
-n 該当行の行番号を表示する
-v 該当しない行を表示する
-f file 検索パターンとしてfileの内容を使用する
再帰的にファイルの内容を検索する
カレントディレクトリ以下から、拡張子 php のファイルのみを対象に、文字列 hoge を含むファイル名と内容を出力
↑
ファイルを分割する
「file」を8行ごとに分割
ファイル確認
分割されたファイルの前半部分は「new_」となり、その後に「aa」~「ac」が振られていく。
↑
ファイルを結合する(1)
test.aa + test.ab + test.ac の順番に結合される
ワイルドカードを使うとファイルは昇順に結合される
↑
ファイルを結合する(2)
join コマンド
キーとなる列は昇順に並べておく。
に対して、単純に二つのファイル名を並べて join すると、キー列の項目において、両方のファイルに存在するもののみ表示する。
オプションを使用すると、
左から、
join コマンド
-a 1:一つ目のファイル(list01.txt)の行は全て表示する。
-1 1:一つ目のファイル(list01.txt)の1列目をキーとする。
-2 1:二つ目のファイル(list02.txt)の1列目をキーとする。
-o:出力する列番号を指定する。
0:キーを表示。
1.2:一つ目のファイル(list01.txt)の2列目を表示。
2.2:二つ目のファイル(list02.txt)の2列目を表示。
-e 'NULL':指定したフィールドがなければ任意の文字列を表示する。(NULLを表示する)
↑
テキストファイルの行数を数える
行数、単語数、バイト数、ファイル名の順に表示される
行数、ファイル名が表示される
行数のみ得たい場合は、grep を使う
↑
メッセージやテキストファイルを1画面ずつ表示する
-N : 行番号を表示する
↑
行番号を追加する
-nオプション(行番号の表示形式の変更)
ln 左詰め
rn 右詰め(デフォルト)
rz 右詰めで0で埋める
-sオプション(行番号とファイルの内容の間の区切り文字を変更)
デフォルトの区切り文字はTAB
-wオプション(行番号の長さを変更)
↑
テキストファイルの行を削除する
45行目を削除する
5行目から20行目までを削除する
13行目以降を削除する
「pattern」を含む行を削除する
空行を削除する
↑
テキストファイルの指定した行のみを出力する
5行目のみを出力する
↑
テキストファイルの行頭,行末に文字列を追加する
行頭に「"」を追加する
行末に「"」を追加する
文字列「AAAA」を含む行の行頭に「;」を追加する
↑
テキストファイルを行単位で並べ替える
sort コマンド
オプション
-n:数値として並べ替える。
-r:降順に並べ替える。(指定しない場合は昇順)
-t 文字:指定文字を区切り文字とする。(デフォルトは空白)
-k 数値1(,数値2):数値1番目のフィールドから数値2番目のフィールドをキーとする。(先頭フィールドは1)
に対して、
複数の列をもとにデータを並べ替える
に対して、
第2フィールドを数値として降順に並べ替え、同じになったものを第1フィールドで並べ替える
↑
フィールド,カラムを取り出して表示する
cut コマンド
オプション
-c 位置:取り出すカラムの位置を指定する。(複数指定可、範囲指定可)
-f 位置:取り出すフィールドの位置を指定する。(複数指定可、範囲指定可)
-d 区切り文字:フィールドの区切り文字を指定する。
最初の3文字を出力する。
ファイルの各行のスペースで区切られた2番目のフィールドを切り出す。
↑
連続したスペースで区切られたフィールドを取り出して表示する
awk コマンド
awk コマンドでは連続した空白は一つの区切りとして扱われる。
3つ目の区切られているフィールドを取り出す。
↑
数値計算をする
scale=桁:割り算で小数点以下の桁数を指定する。初期値は0。
割り算でないと桁数の指定は効かない。
計算途中でも小数点以下を切り捨ててしまう。例えば、「1/2*2」の結果は1ではなく、0になる。
1未満の整数部分の0は表示されない。(マイナスも同様)
0が必要ならば以下のようにする。
↑
縦計を計算する
1列目の合計を出す。
1列目と2列目の合計を出す。
↑
テキストファイルの内容を逆順に表示
tac コマンド
テキストファイルの内容を区切り文字を基準に逆順に表示する。
デフォルトでは区切り文字は改行文字なので行単位で逆順に表示される。
オプション
-s 区切り文字:区切り文字を指定する。
↑
連続する同じ内容の行をまとめる
uniq コマンド
連続する同じ行がある場合それらを削除して表示することができる。
オプションを使用することで、いろいろな表示方法を選べる。
に対して
連続する行をまとめて表示
連続する同じ行がいくつあるか表示
連続する同じ行のみ表示
1度しか現れない行のみ表示
↑
- guitar site WAVE -