Shell の基礎知識

【Shellの基礎知識】初心者向け!便利なShellコマンド集【カテゴリ別】

シェルスクリプトで頻繁に使用されるコマンドをカテゴリ別に整理した一覧です。

基本操作

コマンド用途詳細
basenameファイル名部分を取得パスからディレクトリ部分を除去
catファイル内容の表示複数ファイルの連結表示も可能
chmodファイルの権限を変更読み取り、書き込み、実行権限を設定
chownファイルの所有者を変更所有者およびグループを設定
cpファイルをコピーファイルやディレクトリを複製
cutテキストの一部を抽出特定の列や範囲を切り出し
diffファイルの差分を比較2つのファイルの違いを表示
dirnameディレクトリ名を取得パスからディレクトリ部分を抽出
fileファイルタイプを識別ファイルの種類を表示
findファイルを検索条件に基づいてファイルやディレクトリを検索
grepテキスト検索特定のパターンに一致する行を表示
headファイルの先頭部分を表示指定した行数分の内容を表示
lnリンクを作成ハードリンクやシンボリックリンクを生成
lsディレクトリ内容を一覧表示ファイルやディレクトリの情報を表示
mktemp一時ファイルを作成ユニークな一時ファイルやディレクトリを生成
mvファイルを移動または名前変更ファイルやディレクトリを移動またはリネーム
pwd現在の作業ディレクトリの絶対パスを表示する相対パスではなく、システムのルート(/)からの完全なパスを表示
renameファイル名を変更複数のファイル名を一括で変更
rmファイルを削除ディレクトリやファイルを削除
sedテキスト処理文字列の置換や抽出を実行
shredファイルを安全に削除復元不可能にするためデータを上書き
sortデータをソート行を指定した順序で並び替え
splitファイルを分割大きなファイルを小さな部分に分ける
statファイルの詳細情報を表示ファイルのメタデータを取得
tee出力をファイルに保存標準出力をファイルに書き込む
tailファイルの末尾部分を表示指定した行数分の内容を末尾から表示
touchファイルのタイムスタンプを更新新規ファイル作成にも使用
tr文字列を置換または削除文字列操作を実行
uniq重複行を削除ソート済みデータから重複行を取り除く

ファイル操作

コマンド用途詳細
awkテキスト処理パターンマッチングとデータ操作
basenameファイル名部分を取得パスからディレクトリ部分を除去
catファイル内容の表示複数ファイルの連結表示も可能
chmodファイルの権限を変更読み取り、書き込み、実行権限を設定
chownファイルの所有者を変更所有者およびグループを設定
cpファイルをコピーファイルやディレクトリを複製
cutテキストの一部を抽出特定の列や範囲を切り出し
diffファイルの差分を比較2つのファイルの違いを表示
dirnameディレクトリ名を取得パスからディレクトリ部分を抽出
fileファイルタイプを識別ファイルの種類を表示
findファイルを検索条件に基づいてファイルやディレクトリを検索
grepテキスト検索特定のパターンに一致する行を表示
headファイルの先頭部分を表示指定した行数分の内容を表示
lnリンクを作成ハードリンクやシンボリックリンクを生成
lsディレクトリ内容を一覧表示ファイルやディレクトリの情報を表示
mktemp一時ファイルを作成ユニークな一時ファイルやディレクトリを生成
mvファイルを移動または名前変更ファイルやディレクトリを移動またはリネーム
renameファイル名を変更複数のファイル名を一括で変更
rmファイルを削除ディレクトリやファイルを削除
sedテキスト処理文字列の置換や抽出を実行
shredファイルを安全に削除復元不可能にするためデータを上書き
sortデータをソート行を指定した順序で並び替え
splitファイルを分割大きなファイルを小さな部分に分ける
statファイルの詳細情報を表示ファイルのメタデータを取得
tee出力をファイルに保存標準出力をファイルに書き込む
tailファイルの末尾部分を表示指定した行数分の内容を末尾から表示
touchファイルのタイムスタンプを更新新規ファイル作成にも使用
tr文字列を置換または削除文字列操作を実行
uniq重複行を削除ソート済みデータから重複行を取り除く
unzipZIPファイルを解凍圧縮されたZIPファイルを展開
vimテキストエディタ高度な編集機能を持つエディタ
wc単語や行数をカウントファイルの行数、単語数、バイト数を表示
xargsコマンドライン引数を構築標準入力から引数を生成してコマンドを実行
zipファイルを圧縮ZIP形式でファイルを圧縮

ネットワーク操作

コマンド用途詳細
arpARPキャッシュの管理ネットワーク通信のトラブルシューティングに使用
curlデータの送受信URLを使用してHTTPリクエストを送信
digDNS情報のクエリドメイン名のDNS情報を取得
ethtoolネットワークインターフェースの設定NICの設定や状態を確認および変更
ftpファイル転送プロトコルリモートサーバーとのファイル転送を実行
ifconfigネットワーク設定の表示・変更ネットワークインターフェースの設定を確認または変更
ipネットワークインターフェース管理ルーティングやインターフェースの管理を実行
nc (netcat)ネットワーク通信テストポートスキャンやデータ送信に使用
netstatネットワーク接続の表示ネットワーク接続状況やポート使用状況を確認
ping接続確認指定したホストへの通信テスト
rsyncファイル同期リモート間またはローカルでのファイル同期
scpセキュアコピーSSH経由でファイルを安全にコピー
sshリモートログインリモートサーバーにセキュアに接続
tcpdumpパケットキャプチャネットワークトラフィックを解析
telnetリモートログイン指定したポートに接続して通信を実行
traceroute経路情報の確認ネットワーク経路をトレース
wgetファイルのダウンロードHTTP/FTPを使用してファイルを取得

システム操作

コマンド用途詳細
crontabスケジュールタスクの設定定期的なタスクを自動実行
dfディスク使用状況の表示ファイルシステムの空き容量を確認
dmesgカーネルメッセージの表示システム起動やエラーのログを確認
duディスク使用量を表示ファイルやディレクトリの使用容量を表示
freeメモリ使用状況の表示システムのメモリ状態を確認
stopジョブの停止実行中のジョブを停止
iostatI/Oデバイスの統計情報CPUおよびI/Oデバイスの使用状況を表示
iotopI/O使用状況のリアルタイム表示プロセスごとのI/O使用率を表示
journalctlジャーナルログの確認システムログをフィルタリングして表示
killプロセスを終了指定したプロセスを終了するシグナルを送信
lost未使用スペースの確認不明なファイルやスペースを検出
psプロセスの状態を表示現在実行中のプロセス情報を確認
rebootシステムを再起動システムを安全に再起動
shutdownシステムをシャットダウン指定時間後にシステムを停止
timeコマンドの実行時間を測定コマンドの実行にかかった時間を表示
topシステムリソースの使用状況を表示CPUやメモリの使用率をリアルタイムで表示
uptimeシステム稼働時間を表示システムの起動時間とロードアベレージを確認
vmstatシステムパフォーマンスを表示メモリ、CPU、I/Oの使用状況を確認
wログイン中のユーザーを表示現在ログインしているユーザーとその活動を表示
whoログイン中のユーザーを表示現在ログインしているユーザーを確認

パーミッション管理

コマンド用途詳細
chmodファイルの権限を変更読み取り、書き込み、実行権限を設定
chownファイルの所有者を変更所有者およびグループを設定
getfaclファイルのアクセス制御リストを取得ACL設定を確認
setfaclファイルのアクセス制御リストを設定ACLを適用または変更
umaskデフォルトの権限を設定新規ファイルやディレクトリの権限を指定

プロセス管理

コマンド用途詳細
bgバックグラウンドジョブを再開一時停止中のジョブをバックグラウンドで再開
fgジョブをフォアグラウンドで実行バックグラウンドジョブをフォアグラウンドに移動
jobsジョブリストの表示現在のジョブ状況を確認
killプロセスを終了指定プロセスにシグナルを送信して終了
pgrepプロセスを検索名前に基づいてプロセスを検索
pkillプロセスを名前で終了名前に一致するすべてのプロセスを終了
psプロセスの状態を表示実行中のプロセスを一覧表示
topリソース使用状況をリアルタイム表示CPUやメモリ使用率、プロセス情報を表示

ログ管理

コマンド用途詳細
headファイルの先頭部分を表示指定した行数分の内容を表示
journalctlジャーナルログの確認システムログをフィルタリングして表示
loggerログメッセージを追加カスタムメッセージをシステムログに記録
tailファイルの末尾部分を表示指定した行数分の内容を末尾から表示

アーカイブ管理

コマンド用途詳細
bzip2ファイルを圧縮高圧縮率の形式でファイルを圧縮
bunzip2圧縮ファイルを解凍bzip2形式の圧縮ファイルを展開
gunzip圧縮ファイルを解凍gzip形式の圧縮ファイルを展開
gzipファイルを圧縮gzip形式でファイルを圧縮
tarファイルをアーカイブ複数のファイルを1つにまとめる
unxzXZファイルを解凍XZ形式で圧縮されたファイルを展開
unzipZIPファイルを解凍圧縮されたZIPファイルを展開
xzファイルをXZ形式で圧縮高効率な圧縮形式でファイルを圧縮
zipファイルを圧縮ZIP形式でファイルを圧縮

セキュリティとアクセス管理

コマンド用途詳細
chmodファイルの権限を変更読み取り、書き込み、実行権限を設定
chownファイルの所有者を変更所有者およびグループを設定
passwdパスワードの変更ユーザーのログインパスワードを更新
readonly変数を読み取り専用に設定変数の値を保護して変更を防ぐ
sudo管理者権限でコマンドを実行一時的にスーパーユーザー権限を付与
suユーザーを切り替えスーパーユーザーや他のユーザーに切り替え

alias

`alias`コマンドは、長いコマンドや複雑なコマンドを簡略化するための別名を作成します。定義したエイリアスは、現在のシェルセッションでのみ有効です。

オプション:

  • -p: 現在定義されているすべてのエイリアスを表示します。

使用例:

  • `ll`を`ls -l`のショートカットとして登録します。

    alias ll='ls -l'

  • 現在定義されているすべてのエイリアスを表示します。

    alias

  • `grep`をカラー出力対応でエイリアスとして登録します。

    alias grep='grep --color=auto'

arp

`arp`は、アドレス解決プロトコル(ARP)テーブルを表示・管理するためのコマンドです。IPアドレスとMACアドレスの対応を管理する際に使用します。

オプション:

  • -a: 現在のARPテーブルを表示します。
  • -d [IPアドレス]: 指定したIPアドレスのエントリを削除します。
  • -s [IPアドレス] [MACアドレス]: 静的ARPエントリを追加します。

使用例:

  • 現在のARPテーブルをリスト表示します。

    arp -a

  • IPアドレス`192.168.1.1`のエントリを削除します。

    arp -d 192.168.1.1

  • 指定したIPとMACアドレスの静的ARPエントリを追加します。

    arp -s 192.168.1.1 00:11:22:33:44:55

awk

`awk`は、テキスト処理やデータ抽出を行うための非常に強力なツールです。各行をフィールド単位で分割し、条件に基づいて操作を行います。

オプション:

  • -F: フィールド区切り文字を指定します。
  • -v: 外部変数をスクリプト内で使用します。

使用例:

  • 区切り文字「:」でフィールドを分割し、最初のフィールドを表示します。

    awk -F":" '{print $1}' /etc/passwd

  • 出力フィールド区切りを「,」に設定してフィールドを表示します。

    awk -v OFS="," '{print $1, $2}' file.txt

  • `file.txt`内の最初のフィールドをすべて合計して表示します。

    awk '{sum += $1} END {print sum}' file.txt

basename

`basename`は、パスからディレクトリ部分を除去し、ファイル名部分を取得します。

オプション:

  • --suffix: 指定した拡張子を除去します。

使用例:

  • ファイル名「file.txt」を取得します。

    basename /path/to/file.txt

  • 拡張子「.txt」を除去して「file」を取得します。

    basename /path/to/file.txt .txt

bg

`bg`コマンドは、一時停止しているジョブをバックグラウンドで再開します。

オプション: なし

使用例:

  • ジョブをバックグラウンドで再開します。

    bg %1

bzip2

`bzip2`は、ファイルを高圧縮率で圧縮するためのコマンドです。

オプション:

  • -d: 圧縮ファイルを解凍します。
  • -k: 元のファイルを保持します。

使用例:

  • ファイルをbzip2形式で圧縮します。

    bzip2 file.txt

  • 元のファイルを保持しながら圧縮します。

    bzip2 -k file.txt

  • 圧縮ファイルを解凍します。

    bzip2 -d file.txt.bz2

bunzip2

`bunzip2`は、bzip2形式で圧縮されたファイルを解凍するコマンドです。

オプション: なし

使用例:

  • ファイルを解凍します。

    bunzip2 file.txt.bz2

cal

`cal`コマンドは、カレンダーを表示するためのツールです。

オプション:

  • -y: 今年のカレンダーを表示します。
  • -m: 指定した月を表示します。

使用例:

  • 現在の月のカレンダーを表示します。

    cal

  • 今年のカレンダーを表示します。

    cal -y

  • 指定した月のカレンダーを表示します。

    cal -m 7

cat

`cat`コマンドは、ファイルの内容を表示したり、複数のファイルを連結して表示するために使用されます。

オプション:

  • -n: 行番号を付与します。
  • -E: 行末記号を表示します。

使用例:

  • ファイルの内容を表示します。

    cat file.txt

  • 行番号を付けて内容を表示します。

    cat -n file.txt

  • 各行の末尾に「$」を表示します。

    cat -E file.txt

cd

`cd`コマンドは、カレントディレクトリを変更するために使用されます。

オプション: なし

使用例:

  • 指定したディレクトリに移動します。

    cd /path/to/directory

chmod

`chmod`は、ファイルやディレクトリの権限を変更するためのコマンドです。

オプション:

  • -R: 再帰的に権限を変更します。
  • -v: 権限の変更内容を詳細に表示します。

使用例:

  • ファイルの権限を変更します。

    chmod 755 file.txt

  • ディレクトリとその中のすべてのファイルの権限を変更します。

    chmod -R 755 /path/to/directory

  • 変更内容を表示しながら権限を設定します。

    chmod -v 644 file.txt

chown

`chown`は、ファイルやディレクトリの所有者およびグループを変更するためのコマンドです。

オプション:

  • -R: 再帰的に変更を適用します。
  • -v: 変更内容を詳細に表示します。

使用例:

  • ファイルの所有者を「user」に変更します。

    chown user file.txt

  • ディレクトリとその中のすべての所有者とグループを変更します。

    chown -R user:group /path/to/directory

  • 変更内容を表示しながら所有者を変更します。

    chown -v user file.txt

cp

`cp`コマンドは、ファイルやディレクトリをコピーするために使用されます。

オプション:

  • -r: ディレクトリを再帰的にコピーします。
  • -i: 上書き前に確認を求めます。
  • -v: 処理の詳細を表示します。
  • -p: コピーするファイルの属性(所有権、タイムスタンプなど)を保持します。

使用例:

  • ファイル`file.txt`を`/path/to/destination`にコピーします。

    cp file.txt /path/to/destination

  • `/source`ディレクトリを再帰的にコピーします。

    cp -r /source /destination

  • コピー先に同名ファイルが存在する場合、上書き確認を求めます。

    cp -i file.txt /path/to/destination

  • コピーの詳細を表示します。

    cp -v file.txt /path/to/destination

  • ファイルの属性を保持してコピーします。

    cp -p file.txt /path/to/destination

crontab

`crontab`は、定期タスクを管理するためのコマンドです。

オプション:

  • -e: タスクを編集します。
  • -l: 現在のタスクを表示します。

使用例:

  • 現在のユーザーのタスクを編集します。

    crontab -e

  • 現在のユーザーのタスクを一覧表示します。

    crontab -l

curl

`curl`は、URLを使用してデータを取得または送信するためのコマンドラインツールです。HTTPやHTTPSなど、多くのプロトコルをサポートしています。

オプション:

  • -O: URLのファイルを現在のディレクトリに保存します。
  • -L: リダイレクトを追跡します。
  • -I: HTTPヘッダー情報のみを取得します。
  • -X [リクエスト]: 指定したHTTPリクエストを送信します。

使用例:

  • 指定したURLの内容を取得します。

    curl https://example.com

  • ファイルを現在のディレクトリに保存します。

    curl -O https://example.com/file.txt

  • リダイレクトを追跡してデータを取得します。

    curl -L https://example.com

  • URLのHTTPヘッダー情報のみを取得します。

    curl -I https://example.com

cut

`cut`コマンドは、テキストの特定フィールドを抽出するために使用されます。

オプション:

  • -d: 区切り文字を指定します。
  • -f: 抽出するフィールドを指定します。

使用例:

  • 「:」で区切られた最初のフィールドを抽出します。

    cut -d\":\" -f1 /etc/passwd

  • カンマで区切られた2番目のフィールドを抽出します。

    cut -d\",\" -f2 file.csv

date

`date`コマンドは、現在の日付と時刻を表示するためのコマンドです。

オプション:

  • +FORMAT: 表示フォーマットを指定します。

使用例:

  • 現在の日付を「YYYY-MM-DD」形式で表示します。

    date +\"%Y-%m-%d\"

  • 現在の時刻を「HH:MM:SS」形式で表示します。

    date +\"%H:%M:%S\"

df

`df`コマンドは、ファイルシステムのディスク使用状況を確認するためのコマンドです。

オプション:

  • -h: ファイルシステムの使用量を人間が読みやすい形式で表示します。
  • -T: 各ファイルシステムの種類を表示します。
  • -i: iノードの使用状況を表示します。

使用例:

  • ファイルシステムのディスク使用量を人間が読みやすい形式で表示します。

    df -h

  • ファイルシステムの種類を表示します。

    df -T

  • 各ファイルシステムのiノード使用状況を表示します。

    df -i

diff

`diff`コマンドは、2つのファイルまたはディレクトリの内容を比較して、その違いを表示します。

オプション:

  • -u: ユニファイド形式で差分を表示します。
  • -c: コンテキスト形式で差分を表示します。
  • -i: 大文字と小文字を区別せずに比較します。
  • -r: ディレクトリを再帰的に比較します。

使用例:

  • ファイル`file1.txt`と`file2.txt`の違いを表示します。

    diff file1.txt file2.txt

  • ユニファイド形式で差分を表示します。

    diff -u file1.txt file2.txt

  • 大文字小文字を無視して比較します。

    diff -i file1.txt file2.txt

  • ディレクトリ`dir1`と`dir2`を再帰的に比較します。

    diff -r dir1/ dir2/

dig

`dig`(Domain Information Groper)は、DNSクエリを実行して、ドメイン名やIPアドレスに関する情報を取得するためのコマンドラインツールです。

オプション:

  • +short: 簡易形式で結果を表示します。
  • -x [IPアドレス]: リバースDNSルックアップを実行します。
  • @[ネームサーバー]: 特定のDNSサーバーを使用してクエリを実行します。

使用例:

  • `example.com`のAレコードを取得します。

    dig example.com

  • 簡易形式で`example.com`のAレコードを表示します。

    dig +short example.com

  • IPアドレス`8.8.8.8`のリバースDNSルックアップを実行します。

    dig -x 8.8.8.8

  • GoogleのパブリックDNSサーバー`8.8.8.8`を使用して`example.com`をクエリします。

    dig @8.8.8.8 example.com

dirname

`dirname`は、指定したパスからディレクトリ部分を抽出して表示するためのコマンドです。

オプション: なし

使用例:

  • ファイル`file.txt`のディレクトリパスを抽出します。

    dirname /path/to/file.txt

dmesg

`dmesg`は、カーネルリングバッファの内容を表示するためのコマンドです。

オプション:

  • -T: ログのタイムスタンプを人間が読める形式で表示します。
  • -C: カーネルリングバッファをクリアします。

使用例:

  • カーネルリングバッファの内容を表示します。

    dmesg

  • タイムスタンプを人間が読める形式で表示します。

    dmesg -T

du

`du`は、ディレクトリやファイルのディスク使用量を表示するためのコマンドです。

オプション:

  • -h: ディスク使用量を人間が読みやすい形式で表示します。
  • -d [深さ]: 指定した深さのディレクトリの使用量のみを表示します。

使用例:

  • ディレクトリの使用量を人間が読みやすい形式で表示します。

    du -h /path/to/directory

  • ディレクトリ内の最上位のみの使用量を表示します。

    du -d 1 /path/to/directory

echo

`echo`は、指定した文字列を標準出力に表示するコマンドです。

オプション:

  • -n: 改行なしで文字列を出力します。
  • -e: エスケープシーケンスを解釈します。

使用例:

  • 標準出力に文字列を表示します。

    echo "Hello, World!"

  • 改行を含む文字列を表示します。

    echo -e "Line1\\nLine2"

env

`env`は、現在の環境変数を確認したり、一時的に設定を変更してコマンドを実行するために使用されます。

オプション: なし

使用例:

  • 現在のシェル環境変数を表示します。

    env

  • 一時的に環境変数を設定してコマンドを実行します。

    env VAR_NAME=value command

ethtool

`ethtool`は、ネットワークインターフェースの詳細情報を表示したり、設定を変更するために使用されます。ハードウェアのトラブルシューティングやパフォーマンスの確認に役立ちます。

オプション:

  • -i: ネットワークインターフェースのドライバー情報を表示します。
  • -S: ネットワークインターフェースの統計情報を表示します。

使用例:

  • インターフェース`eth0`のドライバー情報を表示します。

    ethtool -i eth0

  • インターフェース`eth0`の統計情報を表示します。

    ethtool -S eth0

export

`export`は、指定した環境変数をシェルで利用可能にします。

オプション: なし

使用例:

  • 環境変数をシェルで利用可能にします。

    export PATH=/usr/local/bin:$PATH

fg

`fg`は、バックグラウンドで実行中のジョブをフォアグラウンドに移動するためのコマンドです。

オプション: なし

使用例:

  • ジョブをフォアグラウンドに移動します。

    fg %1

file

`file`は、指定したファイルの種類やMIMEタイプを判別して表示するコマンドです。

オプション:

  • -i: ファイルのMIMEタイプを表示します。
  • -b: ファイルのタイプを簡潔に表示します。

使用例:

  • ファイルのMIMEタイプを表示します。

    file -i file.txt

  • ファイルのタイプを簡潔に表示します。

    file -b file.txt

find

`find`は、指定した条件に基づいてファイルやディレクトリを検索するためのコマンドです。

オプション:

  • -name [パターン]: 指定した名前のファイルを検索します。
  • -type [種類]: 指定した種類(`f`=ファイル, `d`=ディレクトリ)のみを検索します。
  • -size [サイズ]: 指定したサイズのファイルを検索します。
  • -exec [コマンド] {} \\;: 検索結果に対して指定したコマンドを実行します。
  • -mtime [日数]: 指定した日数以内に変更されたファイルを検索します。

使用例:

  • 指定した拡張子を持つファイルを検索します。

    find /path -name "*.txt"

  • ディレクトリのみを検索します。

    find . -type d

  • 1MB以上のファイルを検索します。

    find /path -size +1M

  • 検索結果のファイルを削除します。

    find /path -name "*.log" -exec rm {} \\;

  • 過去7日以内に変更されたファイルを検索します。

    find /path -mtime -7

free

`free`は、システム全体のメモリおよびスワップ領域の使用状況を表示するためのコマンドです。

オプション:

  • -h: メモリ使用量を人間が読みやすい形式で表示します。
  • -m: メモリ使用量をMB単位で表示します。
  • -g: メモリ使用量をGB単位で表示します。

使用例:

  • システムのメモリ使用状況を表示します。

    free

  • 人間が読みやすい形式でメモリ使用量を表示します。

    free -h

  • メモリ使用量をMB単位で表示します。

    free -m

ftp

`ftp`コマンドは、ファイル転送プロトコル(FTP)を使用してリモートサーバーに接続し、ファイルをアップロードまたはダウンロードするためのコマンドです。現在では、より安全な`scp`や`rsync`の使用が推奨されています。

オプション:

  • -i: ファイル転送時の確認を無効にします。
  • -n: 自動ログインを無効にします。
  • -v: 詳細な情報を表示します。

使用例:

  • リモートサーバーに接続します。

    ftp ftp.example.com

  • 自動ログインを無効にして接続します。

    ftp -n ftp.example.com

getfacl

`getfacl`コマンドは、ファイルやディレクトリに設定されているアクセス制御リスト(ACL)を表示します。詳細なファイル権限を確認する際に役立ちます。

オプション:

  • -R: ディレクトリを再帰的に処理します。

使用例:

  • ファイルのアクセス制御リストを表示します。

    getfacl file.txt

  • ディレクトリ内のすべてのファイルのACLを再帰的に表示します。

    getfacl -R /path/to/directory

grep

`grep`は、ファイルや標準入力のテキストを検索し、指定されたパターンに一致する行を表示するためのコマンドです。

オプション:

  • -i: 大文字小文字を区別せずに検索します。
  • -v: パターンに一致しない行を表示します。
  • -E: 拡張正規表現を使用します。

使用例:

  • `file.txt`内の`pattern`に一致する行を表示します。

    grep "pattern" file.txt

  • 大文字小文字を区別せずに`error`を検索します。

    grep -i "error" file.txt

  • `warning`に一致しない行を表示します。

    grep -v "warning" file.txt

  • `error`または`warning`に一致する行を表示します。

    grep -E "error|warning" file.txt

gunzip

`gunzip`は、gzip形式で圧縮されたファイルを解凍するためのコマンドです。

オプション: なし

使用例:

  • gzip形式のファイルを解凍します。

    gunzip file.txt.gz

gzip

`gzip`は、ファイルをgzip形式で効率的に圧縮または解凍するためのコマンドです。

オプション:

  • -k: 元のファイルを保持します。
  • -d: 圧縮ファイルを解凍します。

使用例:

  • ファイルをgzip形式で圧縮します。

    gzip file.txt

  • 元のファイルを保持して圧縮します。

    gzip -k file.txt

  • 圧縮ファイルを解凍します。

    gzip -d file.txt.gz

help

`help`は、シェルの組み込みコマンド(ビルトインコマンド)の使い方を表示するためのコマンドです。外部コマンドには使用できません。

オプション: なし

使用例:

  • `cd`コマンドの使い方を表示します。

    help cd

  • `alias`コマンドの詳細を表示します。

    help alias

history

`history`コマンドは、シェルで実行したコマンド履歴を表示および管理します。過去のコマンドを再実行する際に便利です。

オプション:

  • -c: コマンド履歴をクリアします。
  • -w: 履歴をファイルに保存します。

使用例:

  • コマンド履歴を一覧表示します。

    history

  • コマンド履歴をクリアします。

    history -c

  • 履歴を`~/.bash_history`に書き込みます。

    history -w

id

`id`コマンドは、現在のユーザーや指定したユーザーのID情報(UID、GID、所属グループなど)を表示します。

オプション:

  • -u: ユーザーID(UID)を表示します。
  • -g: グループID(GID)を表示します。
  • -G: 所属グループのIDをすべて表示します。

使用例:

  • 現在のユーザーのID情報を表示します。

    id

  • ユーザーID(UID)のみを表示します。

    id -u

  • グループID(GID)のみを表示します。

    id -g

iotop

`iotop`コマンドは、プロセスごとのディスクI/O使用状況をリアルタイムで監視するために使用されます。

オプション:

  • -o: I/Oを実行中のプロセスのみを表示します。
  • -b: バッチモードで出力します。

使用例:

  • ディスクI/O使用状況をリアルタイムで表示します。

    iotop

  • ディスクI/Oを現在実行中のプロセスのみを表示します。

    iotop -o

  • バッチモードで結果を出力します。

    iotop -b

iostat

`iostat`は、システムのCPU使用状況やI/Oデバイスのパフォーマンスを監視するためのコマンドです。

オプション:

  • -c: CPU使用状況を表示します。
  • -d: ディスクI/O統計を表示します。
  • -x: 拡張ディスク統計を表示します。

使用例:

  • CPU使用状況を表示します。

    iostat -c

  • ディスクI/O統計を表示します。

    iostat -d

  • 詳細なディスク統計を表示します。

    iostat -x

ip

`ip`コマンドは、ネットワーク設定やインターフェースの管理を行うためのコマンドです。

オプション:

  • addr: ネットワークインターフェースのIPアドレスを表示します。
  • link: ネットワークインターフェースの状態を表示します。
  • route: ルーティングテーブルを表示します。

使用例:

  • ネットワークインターフェースのIPアドレスを表示します。

    ip addr

  • ネットワークインターフェースの状態を表示します。

    ip link

  • ルーティングテーブルを表示します。

    ip route

jobs

`jobs`コマンドは、シェルで実行中または停止中のジョブをリスト表示します。

オプション: なし

使用例:

  • 現在のシェルで管理されているジョブをリスト表示します。

    jobs

journalctl

`journalctl`は、`systemd`ジャーナルログを管理および表示するためのコマンドです。

オプション:

  • -b: 現在の起動に関するログを表示します。
  • -u [サービス名]: 指定したサービスのログを表示します。
  • -p [優先度]: 指定した優先度のログを表示します。

使用例:

  • 現在の起動に関するログを表示します。

    journalctl -b

  • 指定したサービスのログを表示します。

    journalctl -u sshd

  • エラーレベルのログのみを表示します。

    journalctl -p err

kill

`kill`コマンドは、指定されたプロセスにシグナルを送信して終了させるためのコマンドです。

オプション:

  • -9: 強制終了シグナルを送信します。
  • -15: プロセスを正常に終了させるシグナルを送信します。

使用例:

  • プロセスID`1234`のプロセスを終了します。

    kill 1234

  • プロセスID`1234`のプロセスを強制終了します。

    kill -9 1234

ln

`ln`コマンドは、ファイルやディレクトリのシンボリックリンクまたはハードリンクを作成するためのコマンドです。

オプション:

  • -s: シンボリックリンクを作成します。
  • -v: 作成したリンクの詳細を表示します。

使用例:

  • シンボリックリンクを作成します。

    ln -s /path/to/target /path/to/link

  • ハードリンクを作成します。

    ln file1 file2

logger

`logger`コマンドは、メッセージをシステムログに追加するために使用されます。

オプション:

  • -p [プライオリティ]: ログの優先度を指定します。

使用例:

  • システムログにメッセージを追加します。

    logger "Test message"

  • `local0.info`としてログを記録します。

    logger -p local0.info "Info message"

lost

`lost`コマンドは、失われたファイルやディレクトリの回復や操作に使用されます(利用例は稀)。

オプション: なし

使用例:

  • 失われたデータを確認します。

    lost

ls

`ls`コマンドは、ディレクトリ内のファイルとフォルダをリスト表示する基本的なコマンドです。

オプション:

  • -l: 詳細情報を表示します。
  • -a: 隠しファイルを含めて表示します。
  • -h: ファイルサイズを人間が読みやすい形式で表示します。

使用例:

  • 詳細情報をリスト形式で表示します。

    ls -l

  • 隠しファイルを含めてすべて表示します。

    ls -a

  • 人間が読みやすい形式でサイズを表示します。

    ls -lh

mktemp

`mktemp`コマンドは、一時ファイルまたは一時ディレクトリを作成するためのコマンドです。

オプション:

  • -d: 一時ディレクトリを作成します。
  • -q: エラー時に警告を抑制します。

使用例:

  • 一時ファイルを作成します。

    mktemp

  • 一時ディレクトリを作成します。

    mktemp -d

mv

`mv`コマンドは、ファイルやディレクトリを移動したり、名前を変更するために使用されます。

オプション:

  • -i: 移動先に同名ファイルが存在する場合、上書き前に確認を求めます。
  • -n: 上書きを行いません。
  • -v: 移動操作の詳細を表示します。

使用例:

  • ファイルを移動します。

    mv file.txt /path/to/destination

  • 移動先に同名ファイルが存在する場合に確認を求めます。

    mv -i file.txt /path/to/destination

  • ファイルの名前を変更します。

    mv oldname.txt newname.txt

  • ディレクトリ内のすべてのファイルを移動し、詳細を表示します。

    mv -v /source/* /destination/

nc (netcat)

`nc`コマンドは、ネットワーク接続を確立し、データ転送を行うためのツールです。

オプション:

  • -l: ポートをリッスンします。
  • -u: UDP接続を使用します。

使用例:

  • ポート1234で接続をリッスンします。

    nc -l 1234

  • UDP接続を確立します。

    nc -u 192.168.1.1 1234

netstat

`netstat`は、ネットワーク接続、ルーティングテーブル、ネットワークインターフェース統計を表示するためのコマンドです。

オプション:

  • -t: TCP接続を表示します。
  • -u: UDP接続を表示します。
  • -l: リッスン中のソケットを表示します。
  • -p: プロセスIDとプロセス名を表示します。

使用例:

  • TCP接続を表示します。

    netstat -t

  • UDP接続を表示します。

    netstat -u

  • リッスン中のソケットを表示します。

    netstat -l

  • TCP接続に関連するプロセス情報を表示します。

    netstat -tp

passwd

`passwd`コマンドは、ユーザーアカウントのパスワードを変更または管理するために使用されます。

オプション:

  • --stdin: 標準入力を使用してパスワードを変更します。
  • -l: ユーザーアカウントをロックします。
  • -u: ロックされたアカウントをアンロックします。
  • -e: 次回ログイン時にパスワード変更を強制します。
  • -d: ユーザーアカウントのパスワードを削除します。

使用例:

  • 現在のユーザーのパスワードを変更します。

    passwd

  • ユーザー`user1`のパスワードを変更します。

    sudo passwd user1

  • ユーザー`user1`のアカウントをロックします。

    sudo passwd -l user1

  • ロックされたアカウントをアンロックします。

    sudo passwd -u user1

  • 次回ログイン時にパスワード変更を強制します。

    sudo passwd -e user1

ping

`ping`は、指定したホストがネットワーク上で到達可能かを確認するために使用されます。

オプション:

  • -c [回数]: 指定した回数だけpingリクエストを送信します。
  • -i [秒]: パケット送信間隔を指定します。
  • -t: 生存時間(TTL)を設定します。

使用例:

  • `example.com`に4回だけpingリクエストを送信します。

    ping -c 4 example.com

  • 2秒間隔でpingリクエストを送信します。

    ping -i 2 example.com

ps

`ps`は、現在実行中のプロセスのリストを取得するためのコマンドです。

オプション:

  • -e: すべてのプロセスを表示します。
  • -f: 詳細な形式でプロセスを表示します。
  • -u [ユーザー]: 指定したユーザーのプロセスを表示します。

使用例:

  • すべてのプロセスを表示します。

    ps -e

  • 詳細な形式でプロセスを表示します。

    ps -f

  • ユーザー`user1`が実行しているプロセスを表示します。

    ps -u user1

pwd

`pwd`コマンドは、現在の作業ディレクトリを表示するためのコマンドです。

オプション:

  • -L: シンボリックリンクを解釈して論理パスを表示します。
  • -P: シンボリックリンクを解釈せずに物理パスを表示します。

使用例:

  • 現在の作業ディレクトリ(デフォルトで論理パス)を表示します。

    pwd

  • 論理パスを表示します。

    pwd -L

  • 物理パスを表示します。

    pwd -P

readonly

`readonly`コマンドは、指定した変数を読み取り専用に設定します。

オプション: なし

使用例:

  • 変数を読み取り専用に設定します。

    readonly VAR_NAME

reboot

`reboot`コマンドは、システムを再起動するためのコマンドです。

オプション: なし

使用例:

  • システムを再起動します。

    reboot

rename

`rename`コマンドは、ファイル名を一括変更するためのコマンドです。

オプション: なし

使用例:

  • ファイル名の`old`を`new`に一括変更します。

    rename 's/old/new/' *.txt

rm

`rm`コマンドは、ファイルやディレクトリを削除するためのコマンドです。

オプション:

  • -r: ディレクトリを再帰的に削除します。
  • -f: 確認なしで強制的に削除します。
  • -i: 削除前に確認を求めます。

使用例:

  • ファイルを削除します。

    rm file.txt

  • ディレクトリとその中の全てを再帰的に削除します。

    rm -r /path/to/directory

  • 確認なしでファイルを削除します。

    rm -f file.txt

  • 削除前に確認を求めます。

    rm -i file.txt

rsync

`rsync`コマンドは、ファイルやディレクトリを効率的に同期またはコピーするためのコマンドです。

オプション:

  • -a: アーカイブモード(再帰的コピーとファイル属性の保持)。
  • -v: 詳細な出力を表示します。
  • --progress: コピー中の進行状況を表示します。
  • --delete: 同期先に存在しないファイルを削除します。

使用例:

  • ディレクトリをコピーします。

    rsync -av /source /destination

  • リモートサーバーにコピーし、進行状況を表示します。

    rsync -av --progress /source user@remote:/destination

  • 同期先に存在しないファイルを削除して同期します。

    rsync -av --delete /source /destination

scp

`scp`コマンドは、SSHプロトコルを使用してファイルを安全に転送するためのコマンドです。

オプション:

  • -r: ディレクトリを再帰的にコピーします。
  • -P [ポート番号]: 指定したポートで接続します。
  • -i [鍵ファイル]: SSH鍵を指定して接続します。
  • -v: 詳細なデバッグ情報を表示します。

使用例:

  • ファイルをリモートサーバーにコピーします。

    scp file.txt user@remote:/path/to/destination

  • ローカルディレクトリをリモートサーバーに再帰的にコピーします。

    scp -r /local/directory user@remote:/remote/directory

  • ポート番号を指定してファイルをコピーします。

    scp -P 2222 file.txt user@remote:/path/to/destination

sed

`sed`は、ストリームエディタとして動作し、テキストの編集や置換を行うために使用されます。

オプション:

  • -i: ファイルを直接編集します。
  • -n: 出力を抑制し、指定した内容のみを表示します。
  • s/pattern/replacement/: テキストを置換します。

使用例:

  • ファイル内の最初の`old`を`new`に置き換えます。

    sed 's/old/new/' file.txt

  • ファイルを直接編集して変更を保存します。

    sed -i 's/old/new/' file.txt

  • `pattern`を含む行のみを表示します。

    sed -n '/pattern/p' file.txt

seq

`seq`コマンドは、数字のシーケンスを生成するためのコマンドです。

オプション: なし

使用例:

  • 1から10までの数字を生成します。

    seq 1 10

setfacl

`setfacl`コマンドは、ファイルやディレクトリのアクセス制御リスト(ACL)を設定するためのコマンドです。

オプション:

  • -m: ACLを設定または変更します。

使用例:

  • ユーザー`user1`にファイルの読み書き権限を付与します。

    setfacl -m u:user1:rw file.txt

shred

`shred`コマンドは、ファイルを安全に削除するためのコマンドです。

オプション:

  • -u: ファイルを削除します。

使用例:

  • ファイルを安全に削除します。

    shred -u file.txt

shutdown

`shutdown`コマンドは、システムを安全にシャットダウンまたは再起動するためのコマンドです。

オプション:

  • -h: システムをシャットダウンします。
  • -r: システムを再起動します。
  • +[時間]: 指定した時間後にシャットダウンします。

使用例:

  • システムをすぐにシャットダウンします。

    shutdown -h now

  • システムをすぐに再起動します。

    shutdown -r now

  • 10分後にシステムをシャットダウンします。

    shutdown -h +10

sort

`sort`コマンドは、ファイルの行を指定した条件でソートするためのコマンドです。

オプション:

  • -r: 降順でソートします。
  • -n: 数値としてソートします。
  • -k [列番号]: 指定した列を基準にソートします。

使用例:

  • ファイルを昇順でソートします。

    sort file.txt

  • 降順でソートします。

    sort -r file.txt

  • 数値としてソートします。

    sort -n file.txt

split

`split`コマンドは、大きなファイルを指定した行数またはサイズで分割するためのコマンドです。

オプション:

  • -l [行数]: 指定した行数ごとに分割します。
  • -b [サイズ]: 指定したサイズごとに分割します。
  • -d: 数値の接尾辞を使用します。

使用例:

  • ファイルを10行ごとに分割します。

    split -l 10 file.txt part_

  • ファイルを1MBごとに分割します。

    split -b 1M file.txt part_

ssh

`ssh`は、セキュアなリモートログインを可能にするためのプロトコルで、暗号化された通信を使用します。

オプション:

  • -i [鍵ファイル]: 指定したSSH鍵を使用します。
  • -p [ポート番号]: 使用するポート番号を指定します。
  • -v: 詳細なデバッグ情報を表示します。

使用例:

  • ユーザー`user`でリモートホストに接続します。

    ssh user@example.com

  • 指定したSSH鍵を使用して接続します。

    ssh -i ~/.ssh/id_rsa user@example.com

  • ポート番号を指定して接続します。

    ssh -p 2222 user@example.com

stat

`stat`コマンドは、ファイルやディレクトリの詳細情報(サイズ、所有権、アクセス権など)を取得するためのコマンドです。

オプション:

  • -c: カスタム形式で情報を表示します。
  • --format: 出力形式を指定します。

使用例:

  • ファイルの詳細情報を表示します。

    stat file.txt

  • ファイルのサイズと名前を表示します。

    stat -c "%s %n" file.txt

stop

`stop`コマンドは、サービスを停止するためのコマンドです。`systemd`ベースのシステムでは`systemctl stop`を使用します。

オプション: なし

使用例:

  • 指定したサービスを停止します。

    stop service_name

sudo

`sudo`コマンドは、管理者権限や他のユーザー権限でコマンドを実行するために使用されます。

オプション:

  • -l: 現在のユーザーが実行可能なコマンドを表示します。
  • -u [ユーザー]: 指定したユーザーとしてコマンドを実行します。
  • -k: キャッシュされた認証をクリアします。

使用例:

  • 管理者権限で`apt update`を実行します。

    sudo apt update

  • ユーザー`user1`としてコマンドを実行します。

    sudo -u user1 command

su

`su`コマンドは、現在のユーザーを切り替えるために使用されます。

オプション:

  • -: ログインシェルとして切り替えます。
  • -c: 指定したコマンドを実行します。

使用例:

  • 管理者ユーザーに切り替えます。

    su -

  • ユーザー`user1`に切り替えます。

    su - user1

  • 管理者として`ls /root`を実行します。

    su -c "ls /root"

tail

`tail`コマンドは、ファイルの末尾を表示するためのコマンドです。

オプション:

  • -n [行数]: 表示する行数を指定します。
  • -f: ファイルの末尾をリアルタイムで監視します。

使用例:

  • ファイルの最後の10行を表示します。

    tail file.txt

  • 最後の20行を表示します。

    tail -n 20 file.txt

  • ファイルの末尾をリアルタイムで監視します。

    tail -f file.txt

tar

`tar`コマンドは、複数のファイルをアーカイブにまとめたり、展開するために使用されます。

オプション:

  • -c: 新しいアーカイブを作成します。
  • -x: アーカイブを展開します。
  • -v: 詳細な情報を表示します。
  • -f [ファイル名]: アーカイブのファイル名を指定します。

使用例:

  • `file.txt`を`archive.tar`にアーカイブします。

    tar -cvf archive.tar file.txt

  • `archive.tar`を展開します。

    tar -xvf archive.tar

  • ディレクトリを圧縮しながらアーカイブします。

    tar -czvf archive.tar.gz /path/to/directory

tcpdump

`tcpdump`は、ネットワーク上のパケットをキャプチャして解析するための強力なツールです。

オプション:

  • -i [インターフェース]: 特定のネットワークインターフェースを指定してキャプチャを実行します。
  • -nn: アドレスやポート番号を解決せずに表示します。
  • -c [パケット数]: 指定したパケット数でキャプチャを終了します。
  • -w [ファイル名]: パケットを指定したファイルに保存します。
  • -r [ファイル名]: 保存されたパケットファイルを読み込みます。

使用例:

  • インターフェース`eth0`でパケットをキャプチャします。

    tcpdump -i eth0

  • アドレスとポート番号を解決せずに表示します。

    tcpdump -nn

  • 最初の10パケットのみをキャプチャします。

    tcpdump -c 10 -i eth0

  • キャプチャをファイルに保存します。

    tcpdump -w packets.pcap -i eth0

  • 保存されたパケットファイルを読み取ります。

    tcpdump -r packets.pcap

tee

`tee`コマンドは、標準入力をファイルと標準出力に同時に送信するためのツールです。

オプション:

  • -a: ファイルに追記します。

使用例:

  • 標準出力に表示し、同時にファイルに書き込みます。

    echo "Hello" | tee file.txt

  • ファイルに追記します。

    echo "New Line" | tee -a file.txt

telnet

`telnet`コマンドは、テキストベースの通信プロトコルを使用してホストに接続します。

オプション: なし

使用例:

  • `example.com`のポート80に接続します。

    telnet example.com 80

time

`time`コマンドは、指定したコマンドの実行にかかった時間を測定します。

オプション: なし

使用例:

  • `ls`コマンドの実行時間を測定します。

    time ls

top

`top`コマンドは、システムのプロセスおよびリソース使用状況をリアルタイムで表示します。

オプション:

  • -d [秒]: 更新間隔を指定します。
  • -u [ユーザー]: 指定したユーザーのプロセスのみを表示します。

使用例:

  • プロセスのリソース使用状況をリアルタイムで表示します。

    top

  • ユーザー`user1`のプロセスのみを表示します。

    top -u user1

touch

`touch`コマンドは、新しい空のファイルを作成したり、既存のファイルのタイムスタンプを変更します。

オプション:

  • -t [タイムスタンプ]: 指定したタイムスタンプを設定します。

使用例:

  • 空のファイルを作成します。

    touch file.txt

  • ファイルのタイムスタンプを2023年1月1日00:00に設定します。

    touch -t 202301010000 file.txt

tr

`tr`コマンドは、文字の変換や削除を行います。

オプション:

  • -d: 指定した文字を削除します。

使用例:

  • 小文字を大文字に変換します。

    echo "abc" | tr a-z A-Z

  • 文字`a`を削除します。

    echo "abc" | tr -d a

traceroute

`traceroute`コマンドは、パケットが経由するネットワークルートを表示します。ネットワークのトラブルシューティングに役立ちます。

オプション:

  • -m [ホップ数]: 最大ホップ数を指定します。

使用例:

  • `example.com`までのルートを表示します。

    traceroute example.com

  • 最大5ホップまでのルートを表示します。

    traceroute -m 5 example.com

type

`type`コマンドは、指定したコマンドがシェルビルトイン、エイリアス、または実行可能ファイルであるかを表示します。

オプション: なし

使用例:

  • コマンド`ls`の種類を表示します。

    type ls

uniq

`uniq`コマンドは、重複行を削除またはカウントするために使用されます。入力をソートした後に使用する必要があります。

オプション:

  • -c: 重複行の出現回数を表示します。

使用例:

  • ファイルの重複行を削除します。

    sort file.txt | uniq

  • 重複行とその出現回数を表示します。

    sort file.txt | uniq -c

unxz

`unxz`コマンドは、`xz`形式で圧縮されたファイルを解凍します。元のファイルを復元し、圧縮ファイルは削除されます。

オプション: なし

使用例:

  • 圧縮ファイルを解凍します。

    unxz file.xz

unzip

`unzip`コマンドは、ZIP形式の圧縮ファイルを解凍します。特定のディレクトリに解凍することも可能です。

オプション:

  • -l: ZIPファイルの内容をリスト表示します。
  • -d [ディレクトリ]: 指定したディレクトリに解凍します。

使用例:

  • ZIPファイルを現在のディレクトリに解凍します。

    unzip file.zip

  • ZIPファイルの内容をリスト表示します。

    unzip -l file.zip

  • ZIPファイルを指定したディレクトリに解凍します。

    unzip file.zip -d /path/to/destination

uptime

`uptime`コマンドは、システムの稼働時間、ログイン中のユーザー数、システム負荷状況を表示します。

オプション: なし

使用例:

  • システムの稼働時間と負荷状況を表示します。

    uptime

vim

`vim`は、高機能なテキストエディタであり、プログラミングやテキスト編集に広く使用されます。

オプション:

  • -R: 読み取り専用モードで起動します。
  • -u [設定ファイル]: 特定の設定ファイルを読み込んで起動します。

使用例:

  • ファイルを開きます。

    vim file.txt

  • ファイルを読み取り専用モードで開きます。

    vim -R file.txt

vmstat

`vmstat`は、システムパフォーマンスを監視するためのコマンドで、メモリ、スワップ、CPU、I/Oアクティビティなどの情報を提供します。

オプション:

  • -s: システム統計のスナップショットを表示します。
  • -d: ディスク統計を表示します。
  • [間隔] [回数]: 指定した間隔で統計情報を繰り返し表示します。

使用例:

  • メモリ、CPU、I/Oの概要を表示します。

    vmstat

  • 2秒間隔で5回統計情報を表示します。

    vmstat 2 5

  • システム統計のスナップショットを表示します。

    vmstat -s

w

`w`コマンドは、ログイン中のすべてのユーザー、システムの稼働時間、システムの負荷状況を表示します。

オプション: なし

使用例:

  • 現在ログイン中のユーザーとシステムの状態を表示します。

    w

wget

`wget`は、URLからファイルをダウンロードするための非対話型ネットワークダウンロードツールです。

オプション:

  • -O [ファイル名]: ファイル名を指定して保存します。
  • -c: 中断したダウンロードを再開します。
  • -q: 静かに実行します。

使用例:

  • 指定したURLのコンテンツをダウンロードします。

    wget https://example.com

  • ダウンロードしたコンテンツを`file.txt`として保存します。

    wget -O file.txt https://example.com

  • 中断されたダウンロードを再開します。

    wget -c https://example.com/file.zip

which

`which`コマンドは、指定されたコマンドが存在する場所(実行可能ファイルのパス)を表示します。

オプション: なし

使用例:

  • コマンド`ls`の実行パスを表示します。

    which ls

who

`who`コマンドは、現在ログイン中のユーザーに関する情報を表示します。

オプション:

  • -u: 各ユーザーのログイン時間を表示します。
  • -q: ログインしているユーザー数を表示します。

使用例:

  • 現在ログイン中のユーザーを表示します。

    who

  • 各ユーザーのログイン時間を含めて表示します。

    who -u

whoami

`whoami`コマンドは、現在のシェルセッションで使用中のユーザー名を表示します。

オプション: なし

使用例:

  • 現在のユーザー名を表示します。

    whoami

xargs

`xargs`コマンドは、標準入力から取得したデータを引数として他のコマンドに渡します。

オプション:

  • -n [数]: 各コマンドに渡す引数の数を指定します。
  • -I [置換文字列]: 引数を置換文字列として使用します。

使用例:

  • 標準入力で渡されたファイルを削除します。

    echo "file1 file2" | xargs rm

  • 検索したファイルを移動します。

    find . -name "*.txt" | xargs -I {} mv {} /destination

xz

`xz`コマンドは、高圧縮率でファイルを圧縮および解凍するために使用されます。

オプション:

  • -d: 圧縮ファイルを解凍します。
  • -k: 圧縮後も元のファイルを保持します。

使用例:

  • ファイルを`xz`形式で圧縮します。

    xz file.txt

  • 圧縮ファイルを解凍します。

    xz -d file.txt.xz

  • 元のファイルを保持しながら圧縮します。

    xz -k file.txt

zip

`zip`コマンドは、複数のファイルやディレクトリをZIP形式で圧縮するために使用されます。

オプション:

  • -r: ディレクトリを再帰的に圧縮します。
  • -u: ZIPファイルを更新します。
  • -d [ファイル名]: ZIPファイルから特定のファイルを削除します。
  • -m: 圧縮後に元のファイルを削除します。

使用例:

  • ファイルをZIP形式で圧縮します。

    zip archive.zip file.txt

  • ディレクトリを再帰的に圧縮します。

    zip -r archive.zip /path/to/directory

  • ZIPファイルから特定のファイルを削除します。

    zip -d archive.zip file.txt

  • 圧縮後に元のファイルを削除します。

    zip -m archive.zip file.txt

よく読まれている記事

1

IT入門シリーズ 🟢 STEP 1: ITの基礎を知る(ITとは何か?) 📌 IT初心者が最初に学ぶべき基本知識。ITの概念、ネットワーク、OS、クラウドの仕組みを学ぶ ...

2

「私たちが日々利用しているスマートフォンやインターネット、そしてスーパーコンピュータやクラウドサービス――これらの多くがLinuxの力で動いていることをご存じですか?無料で使えるだけでなく、高い柔軟性 ...

3

この記事は、Linuxについて勉強している初心者の方向けに「Shellスクリプト」について解説します。最後まで読んで頂けましたら、Shellスクリプトはどのような役割を担っているのか?を理解出来るよう ...

-Shell の基礎知識