Linuxよく使うコマンド

コマンドコード 注釈説明
arch マシンのプロセッサアーキテクチャを表示(1)
uname -m マシンのプロセッサアーキテクチャを表示(2)
uname -r 使用中のカーネルバージョンを表示
dmidecode -q ハードウェアシステム部品を表示 - (SMBIOS / DMI)
hdparm -i /dev/hda ディスクの構造特性を列挙
hdparm -tT /dev/sda ディスクでテスト読み取り操作を実行
cat /proc/cpuinfo CPU情報を表示
cat /proc/interrupts 割り込みを表示
cat /proc/meminfo メモリ使用を検証
cat /proc/swaps 使用中のスワップを表示
cat /proc/version カーネルのバージョンを表示
cat /proc/net/dev ネットワークアダプタと統計を表示
cat /proc/mounts マウントされたファイルシステムを表示
lspci -tv PCIデバイスを列挙
lsusb -tv USBデバイスを表示
date システムの日付を表示
cal 2007 2007年のカレンダーを表示
date 041217002007.00 日付と時間を設定 - 月日時分年.秒
clock -w BIOSに時間を修正して保存

コマンドコード 注釈説明
shutdown -h now システムをシャットダウン
init 0 システムをシャットダウン
telinit 0 システムをシャットダウン
shutdown -h hours:minutes & 定期的にシステムをシャットダウン
shutdown -c 定期的なシステムシャットダウンをキャンセル
shutdown -r now 再起動
reboot 再起動
logout ログアウト

コマンドコード 注釈説明
cd /home '/home'ディレクトリに入る
cd .. 上のディレクトリに戻る
cd ../.. 上の2つのディレクトリに戻る
cd ユーザーのホームディレクトリに入る
cd ~user1 ユーザーのホームディレクトリに入る
cd - 最後にいたディレクトリに戻る
pwd 作業パスを表示
ls ディレクトリ内のファイルを表示
ls -F ディレクトリ内のファイルを表示
ls -l ファイルとディレクトリの詳細情報を表示
ls -a 隠しファイルを表示
ls *[0-9]* 数字を含むファイル名とディレクトリ名を表示
tree ルートディレクトリから始まるファイルとディレクトリのツリー構造を表示
lstree ルートディレクトリから始まるファイルとディレクトリのツリー構造を表示
mkdir dir1 'dir1'という名前のディレクトリを作成
mkdir dir1 dir2 二つのディレクトリを同時に作成
mkdir -p /tmp/dir1/dir2 ディレクトリツリーを作成
rm -f file1 'file1'という名前のファイルを削除
rmdir dir1 'dir1'という名前のディレクトリを削除
rm -rf dir1 'dir1'という名前のディレクトリをその内容も含めて削除
rm -rf dir1 dir2 二つのディレクトリとその内容を同時に削除
mv dir1 new_dir ディレクトリの名前を変更または移動
cp file1 file2 一つのファイルをコピー
cp dir/* . ディレクトリ内のすべてのファイルを現在の作業ディレクトリにコピー
cp -a /tmp/dir1 . 一つのディレクトリを現在の作業ディレクトリにコピー
cp -a dir1 dir2 一つのディレクトリをコピー
ln -s file1 lnk1 ファイルまたはディレクトリへのソフトリンクを作成
ln file1 lnk1 ファイルまたはディレクトリへのハードリンクを作成
touch -t 0712250000 file1 ファイルまたはディレクトリのタイムスタンプを変更 - (YYMMDDhhmm)
iconv -l 既知のエンコーディングをリストアップ
iconv -f fromEncoding -t toEncoding inputFile > outputFile 文字のエンコードを変更
find . -maxdepth 1 -name *.jpg -print -exec convert カレントディレクトリ内のファイルサイズを一括調整し、それをサムネイルディレクトリに送信(ImageMagick変換が必要)

コマンドコード 注釈説明
find / -name file1 '/'から始まるルートファイルシステムでファイルとディレクトリを検索
find / -user user1 'user1'に属するファイルとディレクトリを検索
find /home/user1 -name \*.bin '/home/user1'ディレクトリで'.bin'で終わるファイルを検索
find /usr/bin -type f -atime +100 過去100日の間に使用されなかった実行ファイルを検索
find /usr/bin -type f -mtime -10 10日の間に作成または変更されたファイルを検索
find / -name \*.rpm -exec chmod 755 '{}' \; い'.rpm'で終わるファイルを検索し、そのパーミッションを設定する
find / -xdev -name \*.rpm い'.rpm'で終わるファイルを検索し、光学ドライブやフラッシュドライブなどのリムーバブルデバイスを除外
locate \*.ps '.ps'で終わるファイルを探す - 先に'updatedb'コマンドを実行する必要がある
whereis halt バイナリファイル、ソースコードまたはmanの位置を表示
which halt バイナリファイルまたは実行可能ファイルの完全なパスを表示

コマンドコード 注釈説明
mount /dev/hda2 /mnt/hda2 hda2というディスクをマウント - ディレクトリ'/mnt/hda2'が存在することを確認
umount /dev/hda2 hda2というディスクをアンマウント - 先にマウントポイント'/mnt/hda2'から退出
fuser -km /mnt/hda2 デバイスが使用中の場合、強制的にアンマウント
umount -n /mnt/hda2 /etc/mtabファイルに書き込まずにアンマウント操作を実行- 読み取り専用またはディスクが満杯の場合に非常に便利
mount /dev/fd0 /mnt/floppy フロッピーディスクをマウント
mount /dev/cdrom /mnt/cdrom CD-ROMまたはDVD-ROMをマウント
mount /dev/hdc /mnt/cdrecorder CDRWまたはDVD-ROMをマウント
mount /dev/hdb /mnt/cdrecorder CDRWまたはDVD-ROMをマウント
mount -o loop file.iso /mnt/cdrom ファイルまたはISOイメージファイルをマウント
mount -t vfat /dev/hda5 /mnt/hda5 Windows FAT32ファイルシステムをマウント
mount /dev/sda1 /mnt/usbdisk USBフラッシュドライブまたはメモリデバイスをマウント
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share Windowsネットワーク共有をマウント

コマンドコード 注釈説明
df -h マウントされているパーティションの一覧を表示
ls -lSr |more サイズ順にファイルとディレクトリを並べる
du -sh dir1 ディレクトリ 'dir1'が使用しているディスクスペースを推定
du -sk * | sort -rn 容量サイズに基づいてファイルとディレクトリのサイズを順に表示
rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n サイズを基準にしてインストールされたrpmパッケージが使用するスペースを表示 (fedora、redhat系)
dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n サイズを基準にしたインストールされたdebパッケージが使用するスペースを表示 (ubuntu、debian系)

コマンドコード 注釈説明
groupadd group_name 新しいユーザーグループを作成
groupdel group_name ユーザーグループを削除
groupmod -n new_group_name old_group_name ユーザーグループの名前を変更
useradd -c "名前 姓 " -g admin -d /home/user1 -s /bin/bash user1 "admin"ユーザーグループに属するユーザーを作成
useradd user1 新しいユーザーを作成
userdel -r user1 ユーザーを削除 ( '-r'はホームディレクトリも含む)
usermod -c "ユーザー FTP" -g system -d /ftp/user1 -s /bin/nologin user1 ユーザー属性を変更
passwd パスワードを変更
passwd user1 ユーザーのパスワードを変更 (rootのみが実行可能)
chage -E 2020-12-31 user1 ユーザーパスワードの有効期限を設定
pwck '/etc/passwd'のファイル形式および文法をチェックし、存在するユーザーを修正
grpck '/etc/passwd'のファイル形式および文法をチェックし、存在するグループを修正
newgrp group_name 新しいグループにログインして新しく作成されたファイルのデフォルトグループを変更

コマンドコード 注釈説明
ls -lh 権限を表示
ls /tmp | pr -T5 -W$COLUMNS 端末を5列に分けて表示
chmod ugo+rwx directory1 ディレクトリの所有者(u)、グループ(g)、その他(o)に読み(r)、書き(w)、実行(x)の権限を設定
chmod go-rwx directory1 グループ(g)とその他(o)のディレクトリに対する読み書き実行権限を削除
chown user1 file1 ファイルの所有者属性を変更
chown -R user1 directory1 ディレクトリの所有者属性を変更し、同時にそのディレクトリ内のすべてのファイルの属性を変更
chgrp group1 file1 ファイルのグループを変更
chown user1:group1 file1 ファイルの所有者とグループ属性を変更
find / -perm -u+s システム内のすべてのSUID制御ファイルをリストアップ
chmod u+s /bin/file1 バイナリファイルのSUIDビットを設定 - このファイルを実行するユーザーにも所有者と同じ権限が与えられる
chmod u-s /bin/file1 バイナリファイルのSUIDビットを無効にする
chmod g+s /home/public ディレクトリのSGIDビットを設定 - SUIDに似ているが、これはディレクトリに対するもの
chmod g-s /home/public ディレクトリのSGIDビットを無効にする
chmod o+t /home/public ファイルのSTIKYビットを設定 - 正当な所有者だけがファイルを削除できる
chmod o-t /home/public ディレクトリのSTIKYビットを無効にする

コマンドコード 注釈説明
chattr +a file1 ファイルを追加モードでのみ読み書きできるようにする
chattr +c file1 このファイルをカーネルが自動的に圧縮/解凍できるようにする
chattr +d file1 ファイルシステムバックアップを行うとき、dumpプログラムがこのファイルを無視する
chattr +i file1 不変ファイルに設定され、削除、変更、リネーム、リンクできなくなる
chattr +s file1 ファイルを安全に削除できるようにする
chattr +S file1 アプリケーションがこのファイルに対して書き込み操作を実行すると、システムが即座に変更結果をディスクに書き込む
chattr +u file1 ファイルが削除された場合、システムが後でその削除されたファイルを復元できるようにする
lsattr 特別な属性を表示

コマンドコード 注釈説明
bunzip2 file1.bz2 'file1.bz2'というファイルの圧縮を解凍
bzip2 file1 'file1'というファイルを圧縮
gunzip file1.gz 'file1.gz'というファイルの圧縮を解凍
gzip file1 'file1'というファイルを圧縮
gzip -9 file1 最大限に圧縮
rar a file1.rar test_file 'file1.rar'というパッケージを作成
rar a file1.rar file1 file2 dir1 'file1'、 'file2' および 'dir1'を同時に圧縮
rar x file1.rar rarパッケージを解凍
unrar x file1.rar rarパッケージを解凍
tar -cvf archive.tar file1 非圧縮tarballを作成
tar -cvf archive.tar file1 file2 dir1 'file1'、'file2'、以及'dir1'を含むアーカイブファイルを作成
tar -tf archive.tar パッケージ内の内容を表示
tar -xvf archive.tar パッケージを解凍
tar -xvf archive.tar -C /tmp 圧縮パッケージを/tmpディレクトリに解凍
tar -cvfj archive.tar.bz2 dir1 bzip2形式の圧縮パッケージを作成
tar -jxvf archive.tar.bz2 bzip2形式の圧縮パッケージを解凍
tar -cvfz archive.tar.gz dir1 gzip形式の圧縮パッケージを作成
tar -zxvf archive.tar.gz gzip形式の圧縮パッケージを解凍
zip file1.zip file1 zip形式の圧縮パッケージを作成
zip -r file1.zip file1 file2 dir1 複数のファイルとディレクトリをzip形式の圧縮パッケージに同時に圧縮
unzip file1.zip zip形式の圧縮パッケージを解凍

コマンドコード 注釈説明
rpm -ivh package.rpm rpmパッケージをインストール
rpm -ivh --nodeeps package.rpm 依存関係の警告を無視してrpmパッケージをインストール
rpm -U package.rpm 設定ファイルを変更せずにrpmパッケージを更新
rpm -F package.rpm 確実にインストールされているrpmパッケージを更新
rpm -e package_name.rpm rpmパッケージを削除
rpm -qa システム内にインストールされているすべてのrpmパッケージを表示
rpm -qa | grep httpd 名前に"httpd"を含むすべてのrpmパッケージを表示
rpm -qi package_name インストールされたパッケージの特別情報を取得
rpm -qg "System Environment/Daemons" コンポーネントのrpmパッケージを表示
rpm -ql package_name インストールされたrpmパッケージが提供するファイルのリストを表示
rpm -qc package_name インストールされたrpmパッケージが提供する設定ファイルのリストを表示
rpm -q package_name --whatrequires rpmパッケージに依存するリストを表示
rpm -q package_name --whatprovides rpmパッケージが占めるサイズを表示
rpm -q package_name --scripts インストール/削除時に実行されるスクリプトを表示
rpm -q package_name --changelog rpmパッケージの変更履歴を表示
rpm -qf /etc/httpd/conf/httpd.conf 指定したファイルがどのrpmパッケージによって提供されたものであるかを確認
rpm -qp package.rpm -l インストールされていないrpmパッケージが提供するファイルのリストを表示
rpm --import /media/cdrom/RPM-GPG-KEY 公開鍵デジタル証明書をインポート
rpm --checksig package.rpm rpmパッケージの完全性を確認
rpm -qa gpg-pubkey インストールされているすべてのrpmパッケージの完全性を確認
rpm -V package_name ファイルサイズ、許可、タイプ、オーナー、グループ、MD5チェックおよび最終変更日時を確認
rpm -Va システム内のすべてのインストールされたrpmパッケージを確認 - 使用に注意
rpm -Vp package.rpm rpmパッケージがまだインストールされていないことを確認
rpm2cpio package.rpm | cpio --extract --make-directories *bin* rpmパッケージから実行可能ファイルを取得
rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm rpmソースから作成されたパッケージをインストール
rpmbuild --rebuild package_name.src.rpm rpmソースからrpmパッケージを構築

コマンドコード 注釈説明
yum install package_name rpmパッケージをダウンロードしてインストール
yum localinstall package_name.rpm rpmパッケージをインストールし、自分のソフトウェアリポジトリを使ってすべての依存関係を解決する
yum update package_name.rpm 現在のシステムにインストールされているすべてのrpmパッケージを更新
yum update package_name rpmパッケージを更新
yum remove package_name rpmパッケージを削除
yum list 現在のシステムにインストールされているすべてのパッケージを表示
yum search package_name rpmリポジトリ内でソフトウェアパッケージを検索
yum clean packages rpmキャッシュをクリーンアップしてダウンロードしたパッケージを削除
yum clean headers すべてのヘッダファイルを削除
yum clean all すべてのキャッシュされたパッケージおよびヘッダファイルを削除

コマンドコード 注釈説明
dpkg -i package.deb debパッケージをインストール/更新
dpkg -r package_name システムからdebパッケージを削除
dpkg -l システム内にインストールされているすべてのdebパッケージを表示
dpkg -l | grep httpd 名前に"httpd"を含むすべてのdebパッケージを表示
dpkg -s package_name システムにインストールされた特定のパッケージの情報を取得
dpkg -L package_name システムにインストールされたdebパッケージが提供するファイルのリストを表示
dpkg --contents package.deb 未インストールのパッケージが提供するファイルのリストを表示
dpkg -S /bin/ping 指定されたファイルがどのdebパッケージによって提供されたものであるかを確認

コマンドコード 注釈説明
apt-get install package_name debパッケージをインストール/更新
apt-cdrom install package_name CD-ROMからdebパッケージをインストール/更新
apt-get update リスト内のソフトウェアパッケージを更新
apt-get upgrade インストールされているソフトウェアを更新
apt-get remove package_name システムからdebパッケージを削除
apt-get check 依存関係ソフトウェアリポジトリが正しいことを確認
apt-get clean ダウンロードされたソフトウェアパッケージからキャッシュをクリーンアップ
apt-cache search searched-package 検索文字列を含むソフトウェアパッケージ名を返す

コマンドコード 注釈説明
cat file1 最初のバイトから順にファイルの内容を表示
tac file1 最後の行から逆にファイルの内容を表示
more file1 長いファイルの内容を表示
less file1 'more'コマンドに似ているが、ファイル内で正方向と逆方向の操作ができる
head -2 file1 ファイルの最初の2行を表示
tail -2 file1 ファイルの最後の2行を表示
tail -f /var/log/messages リアルタイムで追加されたファイルの内容を表示

コマンドコード 注釈説明
cat file1 | command( sed, grep, awk, grep, etc...) > result.txt ファイルの詳細な説明テキストをマージし、要約を新しいファイルに書き込む
cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt ファイルの詳細な説明テキストをマージし、要約を既存のファイルに書き込む
grep Aug /var/log/messages '/var/log/messages'ファイルの中でキーワード"Aug"を探す
grep ^Aug /var/log/messages '/var/log/messages'ファイルの中で"Aug"で始まる単語を探す
grep [0-9] /var/log/messages '/var/log/messages'ファイルの中で数字を含むすべての行を選択
grep Aug -R /var/log/* '/var/log'およびその後のディレクトリ内で文字列"Aug"を検索
sed 's/stringa1/stringa2/g' example.txt example.txtファイル内の"string1"を"string2"に置き換える
sed '/^$/d' example.txt example.txtファイル内のすべての空白行を削除
sed '/ *#/d; /^$/d' example.txt ファイル内のすべてのコメントと空白行を削除
echo 'esempio' | tr '[:lower:]' '[:upper:]' 上下のセルの内容をマージ
sed -e '1d' result.txt example.txtファイルから最初の行を除外
sed -n '/stringa1/p' "string1"を含む行だけを見る
sed -e 's/ *$//' example.txt 各行の最後の空白文字を削除
sed -e 's/stringa1//g' example.txt 文書から"string1"の単語を削除し、他のすべてを保持
sed -n '1,5p;5q' example.txt 1行目から5行目までの内容を表示
sed -n '5p;5q' example.txt 5行目を表示
sed -e 's/00*/0/g' example.txt 複数のゼロを単一のゼロに置き換える
cat -n file1 ファイルの行数を表示
cat example.txt | awk 'NR%2==1' example.txtファイル内のすべての偶数行を削除
echo a b c | awk '{print $1}' 一行目の最初の列を表示
echo a b c | awk '{print $1,$3}' 一行目の最初と第三列を表示
paste file1 file2 二つのファイルまたは二つの列の内容をマージ
paste -d '+' file1 file2 二つのファイルまたは二つの列の内容をマージし、"+"で区切る
sort file1 file2 二つのファイルの内容をソート
sort file1 file2 | uniq 二つのファイルのユニークな行を取得(重複行を一つだけ保持)
sort file1 file2 | uniq -u 交差を除外し、他の行を残す
sort file1 file2 | uniq -d 二つのファイルの交差部分を取得(同時に二つのファイルに存在する行のみを保持)
comm -1 file1 file2 二つのファイルの内容を比較し、'file1'が含む内容を削除
comm -2 file1 file2 二つのファイルの内容を比較し、'file2'が含む内容を削除
comm -3 file1 file2 二つのファイルの内容を比較し、両方に共通する部分を削除

コマンドコード 注釈説明
dos2unix filedos.txt fileunix.txt テキストファイルの形式をMSDOSからUNIXに変換
unix2dos fileunix.txt filedos.txt テキストファイルの形式をUNIXからMSDOSに変換
recode ..HTML < page.txt> page.html テキストファイルをhtmlに変換
recode -l | more 許可されているすべての変換形式を表示

コマンドコード 注釈説明
badblocks -v /dev/hda1 ディスクhda1の悪いブロックをチェック
fsck /dev/hda1 hda1ディスク上のLinuxファイルシステムの整合性を修復/検査
fsck.ext2 /dev/hda1 hda1ディスク上のext2ファイルシステムの整合性を修復/検査
e2fsck /dev/hda1 hda1ディスク上のext2ファイルシステムの整