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

現在のディレクトリを名前でコピーするRsync

あなたのスクリプトは気に入っていますが、必要に応じて、現在のディレクトリから直接コマンド ラインで実行できます:

rsync -a "$PWD" ~/backup/

または

を使用したスクリプトアプローチと同様の方法で
rsync -a "$(pwd -P)" ~/backup/

注:

  • パスに 1 つ以上のスペースがある場合は、現在のディレクトリを引用符で囲む必要があります。

  • パス内のシンボリック リンクの場合、物理を取得できます すべてのシンボリックリンクを回避するパス オプション -P の指定 pwd で コマンド呼び出し ($(pwd -P) )、またはフルパス($(/bin/pwd))で実行可能ファイルを呼び出します )。
    確かにビルトインが存在します pwd デフォルトでは、symlinked が表示されます パス、および実行可能 /bin/pwd デフォルトでは物理 道。

  • どちらのコマンドも変数 $PWD を参照しています 現在の作業ディレクトリを含む 最終的なシンボリックリンクを含むパスのバージョンを尋ねられたとき :したがって、物理が厳密に必要ない場合 サブシェルの呼び出しを避けることができます 変数 $PWD を直接使用します .

    rsync -a "$PWD" ~/backup/
    

解決策を見つけました:

次のような新しいシェル スクリプトを作成しました:

current_dir=`pwd`
dir_name=`basename $current_dir`
rsync -a . ~/backup/$dir_name

これを実行すると、宛先に新しいディレクトリが作成され、現在のフォルダーの内容がコピーされます。


Linux
  1. 既存の関数と同じ名前のパスで実行可能ファイルを実行しますか?

  2. 特定のディレクトリのフルパス名を取得しますか?

  3. Cで新しいディレクトリを作成する

  1. Rsyncフィルター:1つのパターンのみをコピーしますか?

  2. 完全なパスまたはファイル名で grep の結果を表示する方法

  3. rsync ディレクトリ内の N 個の最新ファイル

  1. ディレクトリ付きの猫ファイル?

  2. フォルダをMvとマージしますか?

  3. 既知のパスにある名前不明のディレクトリへのCd?