目次
序文
この記事は、一般的な Linux コマンドと説明のコレクション (1)から引き続き、ファイルのアクセス許可、ファイルの特殊属性、ファイルのパッケージ化と圧縮、ファイルの内容の表示、テキスト処理など、いくつかの一般的な Linux コマンドを紹介します。一般的な Linux コマンドと説明については本文を参照してください。
- 権限を設定するには「+」を使用し、キャンセルするには「-」を使用します
1. ファイルのアクセス許可
-
ls -lh: ファイルのアクセス許可を含むファイルの詳細をリストします。
-
ls /tmp | pr -T5 -W$COLUMNS: ターミナルの /tmp ディレクトリ内のファイルを 5 列形式で表示します。
-
chmod ugo+rwx directory1: ディレクトリ directory1 の所有者、グループなどの読み取り、書き込み、実行権限を設定します。
-
chmod go-rwx directory1: ディレクトリ directory1 内のグループおよびその他の読み取り、書き込み、および実行権限を取り消します。
-
chown user1 file1: ファイル file1 の所有者を user1 に変更します。
-
chown -R user1 directory1: ディレクトリ directory1 の所有者とその中のすべてのファイルの所有者を user1 に変更します。
-
chgrp group1 file1: ファイル file1 のグループを group1 に変更します。
-
chown user1:group1 file1: ファイル file1 の所有者とグループを同時に user1 と group1 に変更します。
-
find / -perm -u+s: SUID 権限を使用するシステム内のすべてのファイルをリストします。
-
chmod u+s /bin/file1: ファイル file1 に SUID 権限を設定し、ファイルを実行するユーザーが所有者と同じ権限を持つことができるようにします。
-
chmod us /bin/file1: ファイル file1 の SUID 権限を無効にします。
-
chmod g+s /home/public: SUID と同様ですが、ディレクトリ /public の SGID 権限を設定します。
-
chmod gs /home/public: ディレクトリ /public の SGID 権限を無効にします。
-
chmod o+t /home/public: ファイル /public に貼り付け (STIKY) 権限を設定し、合法的な所有者のみがファイルを削除できるようにします。
-
chmod ot /home/public: ディレクトリ /public の貼り付け (STIKY) 権限を無効にします。
2. ファイルの特別な属性
-
chattr +a file1: ファイル file1 を追加専用属性に設定します。これにより、ファイルは追加モードでの読み取りと書き込みのみが許可され、ファイルの変更と削除が禁止されます。
-
chattr +c file1: ファイル file1 がカーネルによって自動的に圧縮および解凍されるように設定します (特定のファイル システムとツールのサポートが必要です)。
-
chattr +d file1: ファイル file1 を設定します。ファイル システムのバックアップを実行する場合、ダンプ プログラムはこのファイルを無視します。
-
chattr +i file1: ファイル file1 を不変属性として設定します。つまり、削除、変更、名前変更、リンクはできません。
-
chattr +s file1: 設定ファイル file1 は安全に削除できます。つまり、削除後に復元されません。
-
chattr +S file1: アプリケーションがファイル file1 に対して書き込み操作を実行した直後に、システムが変更結果をディスクに書き込みます。
-
chattr +u file1: ファイル file1 を回復を許可するように設定します。つまり、ファイルが削除された場合、システムは削除されたファイルを将来復元できるようにします。
-
lsattr: ファイルの特別な属性を表示します。
3. ファイルのパッケージ化と圧縮
-
bunzip2 file1.bz2: 「file1.bz2」という名前のファイルを解凍します。
-
bzip2 file1: 「file1」という名前のファイルを圧縮します。
-
Gunzip file1.gz: 「file1.gz」という名前のファイルを解凍します。
-
gzip file1: 「file1」という名前のファイルを圧縮します。
-
gzip -9 file1: 'file1' を最大圧縮率で圧縮します。
-
rar a file1.rar test_file: 「test_file」を含む「file1.rar」という名前の圧縮パッケージを作成します。
-
rar a file1.rar file1 file2 dir1: 「file1」、「file2」、ディレクトリ「dir1」を同時に「file1.rar」に圧縮します。
-
rar x file1.rar: 「file1.rar」という名前の圧縮パッケージを解凍します。
-
unrar x file1.rar: 「file1.rar」という名前の圧縮パッケージを解凍します。
-
tar -cvf archive.tar file1: 非圧縮の tarball を作成し、その中に「file1」を置きます。
-
tar -cvf archive.tar file1 file2 dir1: 「file1」、「file2」、「dir1」を含むアーカイブ ファイルを作成します。
-
tar -tf archive.tar: tar パッケージの内容を表示します。
-
tar -xvf archive.tar: tar パッケージを解凍します。
-
tar -xvf archive.tar -C /tmp: 圧縮パッケージを /tmp ディレクトリに抽出します。
-
tar -cvfj archive.tar.bz2 dir1: bzip2 形式で圧縮された tar パッケージを作成します。
-
tar -jxvf archive.tar.bz2: bzip2 形式で圧縮された tar パッケージを解凍します。
-
tar -cvfz archive.tar.gz dir1: gzip 形式で圧縮された tar パッケージを作成します。
-
tar -zxvf archive.tar.gz: gzip 形式で圧縮された tar パッケージを解凍します。
-
zip file1.zip file1: 「file1」を含む圧縮パッケージを zip 形式で作成します。
-
zip -r file1.zip file1 file2 dir1: 複数のファイルとディレクトリを zip 形式の圧縮パッケージに同時に圧縮します。
-
unzip file1.zip: 圧縮されたパッケージを zip 形式で解凍します。
4. ファイルの内容を表示する
-
cat file1: ファイル「file1」の内容を最初のバイトから前方に表示します。
-
tac file1: ファイル 'file1' の内容を最後の行から逆方向に表示します。
-
more file1: 長いファイル「file1」の内容を表示し、ページごとに参照します。
-
less file1: 「more」コマンドと似ていますが、ファイル内で逆方向の操作、順方向および逆方向の操作を使用できます。
-
head -2 file1: ファイル 'file1' の最初の 2 行を表示します。
-
tail -2 file1: ファイル 'file1' の最後の 2 行を表示します。
-
tail -f /var/log/messages: ファイル '/var/log/messages' に追加されたコンテンツをリアルタイムで表示します。ログ ファイルやリアルタイム監視が必要なその他のファイルに適しています。
5. テキスト処理
5.1 grep
これらのコマンドは、テキスト操作にパイプ、標準入力 (STDIN)、および標準出力 (STDOUT) を使用します。
-
コマンドを file1 の内容に適用し、処理結果を result.txt ファイルに出力します。
cat file1 | command( sed, grep, awk, 等等...) > result.txt
-
コマンドを file1 の内容に適用し、処理結果を既存の result.txt ファイルの末尾に追加します。
cat file1 | command( sed, grep, awk, 等等...) >> result.txt
-
ファイル「/var/log/messages」内でキーワード「Aug」を含む行を見つけます。
grep Aug /var/log/messages
-
ファイル「/var/log/messages」内で「Aug」で始まる単語を検索します。
grep ^Aug /var/log/messages
-
ファイル「/var/log/messages」内の数字を含むすべての行を選択します。
grep [0-9] /var/log/messages
-
ディレクトリ「/var/log」とそのサブディレクトリで文字列「Aug」を再帰的に検索します。
grep Aug -R /var/log/*
5.2秒
これらの
sed
コマンドは、テキスト ファイルの置換、削除、検索などを行うことができます。
-
example.txt ファイル内の「string1」を「string2」に置き換えます。
sed 's/stringa1/stringa2/g' example.txt
-
example.txt ファイルからすべての空白行を削除します。
sed '/^$/d' example.txt
-
example.txt ファイルから、0 個以上のスペースで始まるすべてのコメント行とすべての空白行を削除します。
sed '/ *#/d; /^$/d' example.txt
-
入力文字列「esempio」を大文字に変換します。
echo 'esempio' | tr '[:lower:]' '[:upper:]'
-
result.txt ファイルから最初の行を除外します。
sed -e '1d' result.txt
-
example.txt ファイル内のキーワード「string1」を含む行のみを表示します。
sed -n '/stringa1/p' example.txt
-
example.txt ファイルから各行の末尾にあるゼロ個以上の空白文字を削除します。
sed -e 's/ *$//' example.txt
-
すべての「string1」用語を文書から削除し、残りを残します。
sed -e 's/stringa1//g' example.txt
-
example.txt ファイルの 1 行目から 5 行目の内容を確認してください。
sed -n '1,5p;5q' example.txt
-
example.txt ファイルの 5 行目を見てください。
sed -n '5p;5q' example.txt
-
example.txt ファイル内の連続する各ゼロを 1 つのゼロに置き換えます。
sed -e 's/00*/0/g' example.txt
5.3 その他
これらのコマンドは、ファイルの処理、比較、マージに役立ちます。
-
各行の前に行番号を付けて file1 の内容を表示します。
cat -n file1
-
example.txt ファイル内の偶数行をすべて削除します。awk コマンドを使用して奇数行を除外します。
cat example.txt | awk 'NR%2==1'
-
文字列「abc」で、awk コマンドを使用して最初の列 (スペースで区切られた単語) を出力します。
echo a b c | awk '{print $1}'
-
文字列「abc」で、awk コマンドを使用して 1 列目と 3 列目を出力します。
echo a b c | awk '{print $1,$3}'
-
file1 と file2 の内容を 1 行ずつマージします。
paste file1 file2
-
file1 と file2 の内容を「+」文字で区切って 1 行ずつマージします。
paste -d '+' file1 file2
-
file1 と file2 の内容を並べ替えます。
sort file1 file2
-
file1 と file2 の和集合を取得し、重複する行を削除します。
sort file1 file2 | uniq
-
file1 と file2 の交差部分を削除し、他の行は残します。
sort file1 file2 | uniq -u
-
file1 と file2 の交差部分を取得し、両方のファイルに存在する行のみを保持します。
sort file1 file2 | uniq -d
-
file1 と file2 の内容を比較し、file1 に含まれる行のみを削除します。
comm -1 file1 file2
-
file1 と file2 の内容を比較し、file2 に含まれる行のみを削除します。
comm -2 file1 file2
-
file1 と file2 の内容を比較し、両方のファイルに含まれる行のみを削除します。
comm -3 file1 file2
要約する
Linux コマンドの使用は柔軟で効率的かつ強力です。これらは、高速で自動化された高度にカスタマイズ可能な操作を提供します。Linux コマンドを使用すると、大規模なタスクを低リソース消費で処理でき、プログラミングとバッチ操作がサポートされます。全体として、Linux コマンドは、効率的で柔軟かつカスタマイズ可能な操作を提供できる強力なツールであり、コンピュータ システムを理解して習得するのに非常に価値があります。
フォロー、いいね、集めて、ワンクリックで友達と3回繋がれたら嬉しいです!