GNU/Linux >> Linux の 問題 >  >> Linux

[Linux]:「tar」シェルコマンドを使用するときにディレクトリを除外する方法

日常の活動では、管理者はLinuxサーバーで定期的なバックアップを実行する必要があります。私自身が管理者なので、「tar」をお勧めします シンプルで最高のツール。バックアップは、すべてのファイルとフォルダをバックアップする必要があるという意味ではありません。テンプレートキャッシュ、ログファイル、キャッシュ、一時的に作成されたファイル、ギャラリーディレクトリなどのディレクトリを除外しなければならない場合があるため、この記事では、特定のディレクトリと特定のパターンを除外する方法についても説明します!

1。 tar –「ディレクトリ」を除外

注:ディレクトリを除外するときは、しないことを確認してください ディレクトリ名の末尾にスラッシュ(/)を使用します。

私はこれを探求するのに多くの時間を無駄にしてきました。ですから、時間を無駄にせず、すぐに作業を完了するための適切な手順に従うようにお願いします。

悪い習慣:

tar -cvf backup.tar --exclude="public_html/template/cache/" public_html/

グッドプラクティス:

tar -cvf backup.tar --exclude="public_html/template/cache" public_html/

2。 tar –複数のディレクトリを除外

複数のディレクトリを除外するには、ディレクトリを個別に指定するか、各ディレクトリをカンマで区切って{中括弧}で囲んでリストします。

方法1:

tar -cvf backup.tar --exclude="public_html/template/cache" --exclude="public_html/images" public_html/

方法2:

tar -cvf backup.tar --exclude={"public_html/template/cache","public_html/images"} public_html/

3。 tar –ファイルからディレクトリを除外する

除外するすべてのディレクトリをファイルにリストし、このリストを使用してtar中にディレクトリを除外します。

方法1:

tar -cvf backup.tar -X exclude_directory.txt public_html/

方法2:

tar -cvf backup.tar --exclude-from=exclude_directory.txt public_html/

exclude_directory.txt 含まれるもの:

public_html/template/cache
public_html/images

4。 tar –特定のパターンを除外する

異なるフォルダに複数のパターンが見つかる場合があり、そのパターンだけに関心があるわけではありません。ここでは、特定のパターンを除外する方法を説明します。

特定のパターンを持つディレクトリを除外するには:

tar -cvf backup.tar --exclude="log" --exclude="cache" public_heml/

前後の文字を含むパターンのファイルを除外するには:

tar -cvf backup.tar --exclude="*.log" --exclude="cache*" public_heml/

Linux
  1. コマンドラインを使用してディレクトリ内のファイルの数を取得するにはどうすればよいですか?

  2. 特定のファイル/フォルダーを除く tar ディレクトリへのシェル コマンド

  3. シェル - コマンドのディレクトリを見つける方法は?

  1. 「cp」コマンドを使用して特定のディレクトリを除外する方法は?

  2. ls コマンドからディレクトリを除外するにはどうすればよいですか

  3. Linux コマンドを使用してシェルのバージョンを確認するにはどうすればよいですか?

  1. シェルコマンドを使用してGDB内で環境変数を設定するには?

  2. smbclient を使用してディレクトリを再帰的にダウンロードするにはどうすればよいですか?

  3. tar を使用する場合、bzip2 のブロック サイズをどのように設定しますか?