baicai

白菜

一个勤奋的代码搬运工!

Linux コマンド

基本コマンド#

uname -m マシンのプロセッサアーキテクチャを表示
uname -r 使用中のカーネルバージョンを表示
dmidecode -q ハードウェアシステムコンポーネントを表示
(SMBIOS / DMI) hdparm -i /dev/hda ディスクのアーキテクチャ特性を列挙
hdparm -tT /dev/sda ディスク上でテスト読み取り操作を実行
arch マシンのプロセッサアーキテクチャを表示
uname -m マシンのプロセッサアーキテクチャを表示
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 システムをシャットダウン(1)
init 0 システムをシャットダウン(2)
telinit 0 システムをシャットダウン(3)
shutdown -h hours:minutes & 予定された時間にシステムをシャットダウン
shutdown -c 予定されたシャットダウンをキャンセル
shutdown -r now 再起動(1)
reboot 再起動(2)
logout ログアウト

ファイルとディレクトリ#

cd /home '/home' ディレクトリに移動
cd .. 上のディレクトリに戻る
cd ../.. 上の2つのディレクトリに戻る
cd 自分のホームディレクトリに移動
cd ~user1 自分のホームディレクトリに移動
cd - 前回のディレクトリに戻る
pwd 作業パスを表示
ls ディレクトリ内のファイルを表示
ls -F ディレクトリ内のファイルを表示
ls -l ファイルとディレクトリの詳細情報を表示
ls -a 隠しファイルを表示
ls *[0-9]* 数字を含むファイル名とディレクトリ名を表示
tree ルートディレクトリから始まるファイルとディレクトリのツリー構造を表示(1)
lstree ルートディレクトリから始まるファイルとディレクトリのツリー構造を表示(2)
mkdir dir1 'dir1'という名前のディレクトリを作成
mkdir dir1 dir2 2つのディレクトリを同時に作成
mkdir -p /tmp/dir1/dir2 ディレクトリツリーを作成
rm -f file1 'file1'という名前のファイルを削除
rmdir dir1 'dir1'という名前のディレクトリを削除
rm -rf dir1 'dir1'という名前のディレクトリとその内容を削除
rm -rf dir1 dir2 2つのディレクトリとその内容を同時に削除
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)
file file1 ファイルのMIMEタイプをテキストとして出力
iconv -l 既知のエンコーディングをリスト
iconv -f fromEncoding -t toEncoding inputFile > outputFile 指定された入力ファイルをfromEncodingでエンコードされていると仮定し、toEncodingに変換して新しいファイルを作成。
find . -maxdepth 1 -name *.jpg -print -exec convert "{}" -resize 80x60 "thumbs/{}" \; 現在のディレクトリ内のファイルをバッチリサイズし、サムネイルディレクトリに送信(Imagemagickのconvertが必要)

ファイル検索#

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 "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 "admin"ユーザーグループに属するユーザーを作成
useradd user1 新しいユーザーを作成
userdel -r user1 ユーザーを削除 ('-r'はホームディレクトリを除外)
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 ユーザー属性を変更
passwd パスワードを変更
passwd user1 ユーザーのパスワードを変更 (rootのみ実行可能)
chage -E 2005-12-31 user1 ユーザーのパスワードの有効期限を設定
pwck '/etc/passwd'のファイル形式と構文をチェックし、存在するユーザーを修正
grpck '/etc/passwd'のファイル形式と構文をチェックし、存在するグループを修正
newgrp group_name 新しいグループにログインして新しく作成されたファイルのデフォルトグループを変更

ファイルの権限、「+」を使用して権限を設定し、「-」を使用して取り消す#

chattr +a file1 追加モードでのみファイルを読み書き可能にする
chattr +c file1 このファイルがカーネルによって自動的に圧縮/解凍されることを許可
chattr +d file1 ファイルシステムバックアップ時にdumpプログラムがこのファイルを無視する
chattr +i file1 不変ファイルとして設定し、削除、変更、名前変更、リンクを禁止
chattr +s file1 ファイルを安全に削除できるようにする
chattr +S file1 アプリケーションがこのファイルに書き込みを行った場合、システムがすぐに変更結果をディスクに書き込む
chattr +u file1 ファイルが削除された場合、システムが後でこの削除されたファイルを復元できるようにする
lsattr 特殊な属性を表示

ファイルの特殊属性、「+」を使用して権限を設定し、「-」を使用して取り消す#

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 -xvfj archive.tar.bz2 bzip2形式の圧縮パッケージを解凍
tar -cvfz archive.tar.gz dir1 gzip形式の圧縮パッケージを作成
tar -xvfz archive.tar.gz gzip形式の圧縮パッケージを解凍
zip file1.zip file1 zip形式の圧縮パッケージを作成
zip -r file1.zip file1 file2 dir1 複数のファイルとディレクトリを同時にzip形式の圧縮パッケージに圧縮
unzip file1.zip zip形式の圧縮パッケージを解凍

RPM パッケージ#

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パッケージを構築

YUM ソフトウェアパッケージアップグレーダー#

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 すべてのキャッシュされたパッケージとヘッダーファイルを削除

deb パッケージ#

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ソフトウェアツール (Debian, Ubuntuおよび類似システム)
apt-get install package_name debパッケージをインストール/更新
apt-cdrom install package_name CDから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 file2 ... | command <> file1_in.txt_or_file1_out.txt PIPE、STDIN、およびSTDOUTを使用したテキスト操作の一般的な構文
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 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}' 1行目の最初の列を表示
echo a b c | awk '{print $1,$3}' 1行目の最初と第三の列を表示
paste file1 file2 2つのファイルまたは2つの列の内容を結合
paste -d '+' file1 file2 2つのファイルまたは2つの列の内容を結合し、"+"で区切る
sort file1 file2 2つのファイルの内容をソート
sort file1 file2 | uniq 2つのファイルの和集合を取得(重複行は1つだけ保持)
sort file1 file2 | uniq -u 交差を削除し、他の行を残す
sort file1 file2 | uniq -d 2つのファイルの交差を取得(両方のファイルに存在するファイルのみを残す)
comm -1 file1 file2 2つのファイルの内容を比較し、'file1'に含まれる内容を削除
comm -2 file1 file2 2つのファイルの内容を比較し、'file2'に含まれる内容を削除
comm -3 file1 file2 2つのファイルの内容を比較し、両方のファイルに共通する部分を削除

文字セットとファイル形式変換#

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 linuxファイルシステムの整合性を修復/チェック
fsck.ext2 /dev/hda1 hda1ディスク上のext2ファイルシステムの整合性を修復/チェック
e2fsck /dev/hda1 hda1ディスク上のext2ファイルシステムの整合性を修復/チェック
e2fsck -j /dev/hda1 hda1ディスク上のext3ファイルシステムの整合性を修復/チェック
fsck.ext3 /dev/hda1 hda1ディスク上のext3ファイルシステムの整合性を修復/チェック
fsck.vfat /dev/hda1 hda1ディスク上のfatファイルシステムの整合性を修復/チェック
fsck.msdos /dev/hda1 hda1ディスク上のdosファイルシステムの整合性を修復/チェック
dosfsck /dev/hda1 hda1ディスク上のdosファイルシステムの整合性を修復/チェック

ファイルシステムの初期化#

mkfs /dev/hda1 hda1パーティションにファイルシステムを作成
mke2fs /dev/hda1 hda1パーティションにlinux ext2のファイルシステムを作成
mke2fs -j /dev/hda1 hda1パーティションにlinux ext3(ジャーナル型)のファイルシステムを作成
mkfs -t vfat 32 -F /dev/hda1 FAT32ファイルシステムを作成
fdformat -n /dev/fd0 フロッピーディスクをフォーマット
mkswap /dev/hda3 スワップファイルシステムを作成

SWAP ファイルシステム#

mkswap /dev/hda3 スワップファイルシステムを作成
swapon /dev/hda3 新しいスワップファイルシステムを有効にする
swapon /dev/hda2 /dev/hdb3 2つのスワップパーティションを有効にする

バックアップ#

dump -0aj -f /tmp/home0.bak /home '/home'ディレクトリの完全バックアップを作成
dump -1aj -f /tmp/home0.bak /home '/home'ディレクトリのインタラクティブバックアップを作成
restore -if /tmp/home0.bak インタラクティブバックアップを復元
rsync -rogpav --delete /home /tmp 両方のディレクトリを同期
rsync -rogpav -e ssh --delete /home ip_address:/tmp SSHトンネル経由でrsync
rsync -az -e ssh --delete ip_addr:/home/public /home/local SSHと圧縮を使用してリモートディレクトリをローカルディレクトリに同期
rsync -az -e ssh --delete /home/local ip_addr:/home/public SSHと圧縮を使用してローカルディレクトリをリモートディレクトリに同期
dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz' SSH経由でローカルディスクのバックアップを実行
dd if=/dev/sda of=/tmp/file1 ディスク内容をファイルにバックアップ
tar -Puf backup.tar /home/user '/home/user'ディレクトリのインタラクティブバックアップを実行
( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p' SSH経由でリモートディレクトリにディレクトリ内容をコピー
( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p' SSH経由でローカルディレクトリにディレクトリ内容をコピー
tar cf - . | (cd /tmp/backup ; tar xf - ) あるディレクトリを別の場所にコピーし、元の権限とリンクを保持
find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents あるディレクトリからすべての'.txt'で終わるファイルを探して別のディレクトリにコピー
find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 '.log'で終わるすべてのファイルを探してbzipパッケージを作成
dd if=/dev/hda of=/dev/fd0 bs=512 count=1 MBR(Master Boot Record)の内容をフロッピーディスクにコピー
dd if=/dev/fd0 of=/dev/hda bs=512 count=1 保存されたフロッピーディスクのバックアップからMBR内容を復元

CD#

cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force 書き換え可能なCDの内容を消去
mkisofs /dev/cdrom > cd.iso ディスク上にCDのISOイメージファイルを作成
mkisofs /dev/cdrom | gzip > cd_iso.gz ディスク上に圧縮されたCDのISOイメージファイルを作成
mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd ディレクトリのISOイメージファイルを作成
cdrecord -v dev=/dev/cdrom cd.iso ISOイメージファイルを焼く
gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom - 圧縮されたISOイメージファイルを焼く
mount -o loop cd.iso /mnt/iso ISOイメージファイルをマウント
cd-paranoia -B CDから音楽トラックをwavファイルに転送
cd-paranoia -- "-3" CDから音楽トラックをwavファイルに転送(パラメータ-3)
cdrecord --scanbus バスをスキャンしてSCSIチャネルを識別
dd if=/dev/hdc | md5sum デバイスのmd5sumコードをチェック、例えばCD

ネットワーク(イーサネットと WIFI 無線)#

ifconfig eth0 イーサネットカードの設定を表示
ifup eth0 'eth0'ネットワークデバイスを有効にする
ifdown eth0 'eth0'ネットワークデバイスを無効にする
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 IPアドレスを制御
ifconfig eth0 promisc 'eth0'をプロミスキャスモードに設定してパケットをスニッフィング
dhclient eth0 DHCPモードで'eth0'を有効にする
route -n ルーティングテーブルを表示
route add -net 0/0 gw IP_Gateway デフォルトゲートウェイを設定
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 ネットワーク'192.168.0.0/16'に到達するための静的ルートを設定
route del 0/0 gw IP_gateway 静的ルートを削除
echo "1" > /proc/sys/net/ipv4/ip_forward IPルーティングを有効にする
hostname システムのホスト名を表示
host www.example.com ホスト名を解決して名前をIPアドレスに変換し、逆も同様(1)
nslookup www.example.com ホスト名を解決して名前をIPアドレスに変換し、逆も同様(2)
ip link show すべてのインターフェースのリンク状態を表示
mii-tool eth0 'eth0'のリンク状態を表示
ethtool eth0 ネットワークカード'eth0'の統計を表示
netstat -tup すべてのアクティブなネットワーク接続とそのPIDを表示
netstat -tupl システムでリッスンしているすべてのネットワークサービスとそのPIDを表示
tcpdump tcp port 80 すべてのHTTPトラフィックを表示
iwlist scan 無線ネットワークを表示
iwconfig eth1 無線ネットワークカードの設定を表示
hostname ホスト名を表示
host www.example.com ホスト名を解決して名前をIPアドレスに変換し、逆も同様
nslookup www.example.com ホスト名を解決して名前をIPアドレスに変換し、逆も同様
whois www.example.com Whoisデータベースを検索

ディレクトリ内容をリスト表示#

ls -a:すべてのファイルを表示(隠しファイルを含む);
ls -l:詳細情報を表示;
ls -R:サブディレクトリ構造を再帰的に表示;
ls -ld:ディレクトリとリンク情報を表示;
ctrl+r:履歴の中で検索したコマンド(コマンド内の任意の文字を入力);
Linuxで.で始まるファイルは隠しファイル;
pwd:現在のディレクトリを表示

ファイルの種類を確認#

file:ファイルの種類を確認

ファイルディレクトリをコピー#

1、cp:ファイルとディレクトリをコピー cpソースファイル(フォルダー)ターゲットファイル(フォルダー)。
よく使うパラメータ:-r:ディレクトリツリー全体を再帰的にコピー;-v:詳細情報を表示;
フォルダーをコピーする場合は、cpコマンドの後に-rパラメータを追加する必要があります:
例:cp -r ソースフォルダー ターゲットフォルダー。

2、touch+ファイル名:ファイルが存在しない場合は、対応するファイルを作成;ファイルが存在する場合は、ファイルの作成日時を変更。
機能:空のファイルを生成するか、ファイルのアクセス/変更の時間記録値を変更;
touch * :現在のファイルの時間をシステムの現在の時間に変更;
touch –d 20040210 test:testファイルの日付を20040210に変更;
touch abc:abcファイルが存在する場合は、システムの現在の時間に変更;存在しない場合は、現在の時間の空ファイルを生成。

3、mv ファイル ターゲットディレクトリ:ファイルまたはディレクトリを移動または名前変更(ファイル名を指定すると、ファイルを名前変更できます)。ファイルやディレクトリを別のディレクトリに移動するか、ファイルやディレクトリの名前を変更できます。
書式:mv [パラメータ]<ソースファイルまたはディレクトリ> <ターゲットファイルまたはディレクトリ>
mva.txt ../:a.txtファイルを上のディレクトリに移動
mv a.txt b.txt:a.txtをb.txtに名前変更
mvdir2 ../:dir2ディレクトリを1つ上に移動

4、rm:ファイルを削除
よく使うパラメータ:-i:インタラクティブ -r:ディレクトリ内のすべての内容を再帰的に削除。

5、mkdir +フォルダー名:フォルダーを作成

6、rm -r +フォルダー名:フォルダーを削除(空のフォルダーと非空のフォルダーの両方を削除可能);
rmdir フォルダー名:フォルダーを削除(空のフォルダーのみ削除可能)。

7、mkdir -p dir1/dir2 :現在のディレクトリにdir1ディレクトリを作成し、dir1ディレクトリ内にdir2ディレクトリを作成、つまり2つのディレクトリ(dir1/とdir1/dir2)を連続して作成。

8、rmdir –p dir1/dir2:dir1内のdir2ディレクトリを削除し、dir1ディレクトリが空の場合はそれも削除。

9、rm * :現在のディレクトリ内のすべてのファイルを削除

10、-fパラメータ:強制的にファイルを削除 rm –f  *.txt:すべての拡張子がtxtのファイルを強制的に削除。

11、-iパラメータ:ファイルを削除する際に確認
rm –i  * :現在のディレクトリ内のすべてのファイルを削除する際に次のようなプロンプトが表示されます:
rm:backup:is a directory    ディレクトリに遭遇した場合はスキップ
rm: remove ‘myfiles.txt’ ? Y
ファイルを削除する際に確認が行われ、YまたはNキーを押して削除を許可または拒否できます。

12、-rパラメータ:再帰的に削除(サブディレクトリも削除、これは非常に一般的なパラメータです)。
rm  -r test :testディレクトリを削除(testディレクトリ内のすべてのファイルとサブディレクトリを含む);
rm  -r  *:すべてのファイルを削除(現在のディレクトリ内のすべてのファイル、すべてのサブディレクトリおよびサブディレクトリ内のファイルを含む) 一般的にディレクトリを削除する際にはrとfを一緒に使用して面倒を避けます;
rm  -rf test :強制的に削除し、確認なし。

13、grep:機能:ファイル内で一致する文字を検索して出力。
書式:grep[パラメータ] <探している文字列> <探す文字列のソースファイル>
greplinux test.txt:test.txtファイル内の文字列linuxを検索して出力。

14、lnコマンド
機能:ファイルとディレクトリの間にリンクを作成
書式:ln [パラメータ] <ソースファイルまたはディレクトリ> <ターゲットファイルまたはディレクトリ>
リンクは「ソフトリンク」と「ハードリンク」に分かれます
1.ソフトリンク:
ln–s /usr/share/do  doc :リンクファイルdocを作成し、/usr/share/doディレクトリを指す
2.ハードリンク:
ln  /usr/share/test  hard:ハードリンクファイルhardを作成し、testファイルに対応するストレージ領域にもう1つのファイルが指すことになります。

システムの一般的なコマンド#

1、コマンドを表示

date:現在のシステムの時間を確認または設定:時間をフォーマット表示:+%Y--%m--%d;
date -s:現在のシステムの時間を設定;
hwclock(clock):ハードウェアクロックの時間を表示(管理者権限が必要);
cal:カレンダーを表示;
書式cal [パラメータ] 月年;
cal:当月のカレンダーを表示   cal4 2004 :2004年4月のカレンダーを表示;
cal- y 2003:2003年のカレンダーを表示;
uptime:システムの稼働時間を確認

2、出力確認コマンド

2、出力確認コマンド

echo:入力内容を表示  追加ファイルecho "liuyazhuang" >> liuyazhuang.txt
cat:ファイル内容を表示し、複数のファイルを1つのファイルに結合することもできます;
書式:書式:cat[パラメータ]<ファイル名>
cat  test.txt:test.txtファイルの内容を表示;
cat  test.txt | more  :test.txtファイルの内容をページごとに表示;
cat  test.txt >> test1.txt :test.txtの内容をtest1.txtの後に追加;
cat  test.txt test2.txt >readme.txt : test.txtとtest2.txtファイルを結合してreadme.txtファイルを作成;
head:ファイルの最初の数行を表示(デフォルトは10行) -n:表示する行数を指定する書式:head -n ファイル名;
tail:ファイルの最後の数行を表示(デフォルトは10行)-n:表示する行数を指定する -f:ファイルの更新を追跡表示 (一般的にログを表示するために使用され、コマンドは終了せず、新しい内容が追加されるのを継続的に表示します);
書式:書式:tail[パラメータ]<ファイル名>
tail-10 /etc/passwd :/etc/passwd/ファイルの最後の10行の内容を表示;
tail+10 /etc/passwd :/etc/passwd/ファイルの10行目から最後までの内容を表示;
more:ファイル内容をページごとに表示(下にのみページをめくることができる);
moreコマンドは、表示する内容が1画面の長さを超える場合に一般的に使用されます。画面表示が瞬時に消えてしまうのを避けるために、ユーザーはmoreコマンドを使用して、画面が1ページ分表示されると一時停止します。このとき、スペースキーを押すと次の画面が表示され、Qキーを押すと表示を停止します;
ls  -al  |more:長い形式でetcディレクトリ内のファイルリストを表示し、1画面分表示されると一時停止し、スペースキーを押すと次の画面が表示され、Qキーを押すと離脱;
less:ファイル内容をページごとに表示(上下にページをめくる)上キーを押してページをめくり、qを押して終了;
lessコマンドの使い方はmoreコマンドに似ており、1ページを超えるファイルを閲覧するためにも使用できます。lessコマンドは、スペースキーを押してファイルを下に表示するだけでなく、上下キーを使用してファイルをスクロールすることもできます。閲覧を終了するには、lessコマンドのプロンプト「:」でQキーを押します;
ls  -al | less:長い形式で/etcディレクトリ内のすべての内容をリスト表示。ユーザーは上下キーで閲覧するか、Qキーを押して離脱。

3、ハードウェア情報の確認

3、ハードウェア情報の確認

Ispci:PCIデバイスを確認  -v:詳細情報を確認
Isusb:USBデバイスを確認 -v:詳細情報を確認
Ismod:読み込まれたモジュール(ドライバ)を確認

4、シャットダウン、再起動

4、シャットダウン、再起動

shutdown コンピュータをシャットダウンまたは再起動
shutdown[シャットダウン、再起動]時間  -hコンピュータをシャットダウン   -r:コンピュータを再起動
例:即時シャットダウン:shutdown -h now
10分後にシャットダウン:shutdown -h +10
23:30にシャットダウン:shutdown -h 23:30
即時再起動:shutdown -r now
poweroff:即時にコンピュータをシャットダウン
reboot:即時にコンピュータを再起動

5、アーカイブ、圧縮

5、アーカイブ、圧縮

zip:ファイルを圧縮 zip liuyazhuang.zip myfile 書式は:“zip 圧縮されたzipファイル名”
unzip:ファイルを解凍 unzip liuyazhuang.zip
gzip:ファイルを圧縮 gzip ファイル名
tar:ファイルをアーカイブ
tar -cvf out.tar liuyazhuang アーカイブを作成("liuyazhuang"ファイルをアーカイブにまとめる)
tar -xvf liuyazhuang.tar     アーカイブを解放(liuyazhuang.tarアーカイブを解放)
tar -cvzf backup.tar.gz/etc  
-zパラメータはアーカイブされたアーカイブファイルをgzip圧縮してサイズを減少させます。
-c:新しいtarファイルを作成
-v:実行プロセスの情報を表示
-f:ファイル名を指定
-z:gzip圧縮コマンドを呼び出して圧縮
-t:圧縮ファイルの内容を確認
-x:tarファイルを解凍
tar  -cvf test.tar  *:すべてのファイルをtest.tarにアーカイブし、拡張子.tarは自分で追加する必要があります
tar  -zcvf test.tar.gz  *:すべてのファイルをtest.tarにアーカイブし、gzipコマンドで圧縮
tar -tf   test.tar :test.tarファイルに含まれるファイルを確認
tar -xvf test.tar       test.tarを解凍
tar -zxvf foo.tar.gz   解凍
gzipおよびgunzipコマンド
gziptest.txt :ファイルを圧縮する際に、パラメータは不要
gizp–l test.txt.gz:圧縮率を表示

6、検索

6、検索

locate:ファイル、フォルダーを迅速に検索:locate keyword
このコマンドは事前にデータベースを構築する必要があり、データベースはデフォルトで毎日更新されます。手動でupdatedbコマンドを使用してデータベースを構築または更新できます。
find検索位置検索パラメータ
例:
find . -name *liuyazhuang* 現在のディレクトリ内で"liuyazhuang"を含むファイルを検索
find / -name *.conf  ルートディレクトリ(ハードディスク全体)内で.confで終わるファイルを検索
find / -perm 777 すべての権限が777のファイルを検索
find / -type d ルートディレクトリ内のすべてのディレクトリを返す
find . -name "a*"-exec ls -l {} \;
find機能:ファイルまたはディレクトリを探すために使用
書式:find [<パス>] [一致条件]
find / -name httpd.conf システムのルートディレクトリ内でhttpd.confという名前のファイルを検索

7、ctrl+c :現在のコマンドを終了

8、whoまたはwコマンド

8、whoまたはwコマンド

機能:現在のシステムにログインしているユーザーを表示
書式:who/w[パラメータ]

9、dmesgコマンド

9、dmesgコマンド
機能:システム診断情報、オペレーティングシステムのバージョン番号、物理メモリのサイズおよびその他の情報を表示。

10、dfコマンド

10、dfコマンド
機能:ファイルシステムの各パーティションの使用状況を確認するために使用されます。

11、duコマンド

11、duコマンド

機能:特定のディレクトリ内の各レベルのサブディレクトリが使用しているハードディスクスペースの数を確認するために使用されます。
書式:du [パラメータ] <ディレクトリ名>

12、freeコマンド

12、freeコマンド

機能:システムメモリ、仮想メモリ(スワップスペース)のサイズの使用状況を確認するために使用されます。

VIM#

VIMは強力なコマンドラインテキストエディタで、Linuxではvimコマンドを使用してvimエディタを起動できます。

一般的にvim + 目標ファイルパスの形式でvimを使用します。

目標ファイルが存在する場合、vimは目標ファイルを開き、目標ファイルが存在しない場合、vimは新しいファイルを作成して開きます。

:q:vimエディタを終了

VIMモード

vimには3つのモードがあります:

(1)コマンドモード(通常モード)

vimが起動すると、デフォルトでコマンドモードに入ります。どのモードでもescキーを押すことでコマンドモードに戻ることができます(何度も押すことができます)。コマンドモードでは、さまざまなコマンドを入力して選択、コピー、貼り付け、元に戻すなどの操作を行うことができます。

コマンドモードの一般的なコマンドは次のとおりです:
i : カーソルの前にテキストを挿入
o: 現在の行の下に新しい行を挿入
dd: 行全体を削除
yy:現在の行の内容をバッファに保存(現在の行をコピー)
n+yy : n行の内容をバッファに保存(n行をコピー)
p: バッファ内のテキストをカーソルの後ろに挿入(貼り付け)
u:前の操作を元に戻す
r: 現在の文字を置き換える
/ キーワードを検索

(2)挿入モード

コマンドモードで " i "キーを押すと、挿入モードに入ります。挿入モードでは、テキスト内容を編集できます。escキーを使用してコマンドモードに戻ります。

(3)exモード

コマンドモードで" : "キーを押すとexモードに入ります。カーソルが下部に移動し、ここで変更を保存したりvimを終了したりできます。

exモードの一般的なコマンドは次のとおりです:
:w :現在の変更を保存
:q :終了
:q! :強制終了し、変更を保存
:x  :保存して終了、:wqと同じ
:set number 行番号を表示
:! システムコマンド  システムコマンドを実行し、結果を表示
:sh :コマンドラインに切り替え、ctrl+dでvimに戻る

ソフトウェアパッケージ管理コマンド (RPM)#

1、ソフトウェアパッケージのインストール

1、ソフトウェアパッケージのインストール

RPMコマンドのインストールモードを使用すると、ソフトウェアパッケージ内のすべてのコンポーネントをシステム内の正しいパスに配置できます。ソフトウェアパッケージのインストールコマンドは:rpm –ivh wu-ftpd-2.6.2-8.i386.rpm
i:rpmのインストールモードを示す v: ファイル情報を検証する h: #記号でインストールの進行状況を表示

2、ソフトウェアパッケージの削除

2、ソフトウェアパッケージの削除

削除モードでは、指定されたソフトウェアパッケージの内容をすべて削除しますが、変更された設定ファイルは含まれません。RPMソフトウェアパッケージを削除するコマンドは次のとおりです:rpm –e  wu-ftpd
注意:ここではソフトウェア名“wu-ftpd”または”wu-ftpd-2.6.2-8”を使用する必要があり、最初にインストールしたときのソフトウェアパッケージ名.wu-ftpd-2.6.2-8.i386.rpmを使用しないでください。

3、ソフトウェアパッケージのアップグレード

3、ソフトウェアパッケージのアップグレード

アップグレードモードでは、ユーザーが指定した更新バージョンをインストールし、システムにインストールされている同じソフトウェアパッケージを削除します。ソフトウェアパッケージのアップグレードコマンドは次のとおりです:rpm –Uvh wu-ftpd-2.6.2-8.i386.rpm  –Uvh:アップグレードパラメータ。

4、ソフトウェアパッケージの更新

4、ソフトウェアパッケージの更新

更新モードでは、rpmコマンドがコマンドラインで指定されたソフトウェアパッケージがシステム内の元のソフトウェアパッケージよりも新しいかどうかを確認します。もしそうであれば、rpmコマンドは指定されたソフトウェアパッケージを自動的に更新します。逆に、システムに指定されたソフトウェアパッケージの古いバージョンがない場合、rpmコマンドはこのソフトウェアパッケージをインストールしません。アップグレードモードでは、システムに古いバージョンがあるかどうかに関係なく、rpmコマンドは指定されたソフトウェアパッケージをインストールします。
rpm –Fvhwu-ftpd-2.6.2-8.i386.rpm   -Fvh:更新パラメータ

5、ソフトウェアパッケージのクエリ

5、ソフトウェアパッケージのクエリ

RPMソフトウェアパッケージに関する情報を取得するには、クエリモードを使用できます。-qパラメータを使用して、インストールされたソフトウェアパッケージの内容をクエリできます。
rpm  –q wu-ftpd
ソフトウェアパッケージがインストールされている場所をクエリ:rpm –ql package-name
rpm –ql xv (lパラメータ:ファイルリストを表示)
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。