1

毎日新しいサブディレクトリが自動的に作成される親フォルダーがあります。サブディレクトリの命名形式は「2013-10-02T1430+0000」です。後日、作成される新しいサブディレクトリの名前は「2013-10-03T1430+0000」になります。

スケジュールに従って、作成された最新のサブディレクトリの内容のみを別のフォルダーに自動的にコピーするスクリプトが必要です。

cp コマンドは問題ありませんが、どうにかして cp ソースを最新のサブディレクトリ名に置き換える必要があります。いくつかの調査を行った後、次のコマンドが最新または最新のサブディレクトリを返すことがわかりました。

ls -tr ParentFolder | tail -1

このコマンドの結果を cp コマンドに入れるにはどうすればよいですか? これを行う簡単な方法はありますか?

事前にすべてに感謝します。

4

1 に答える 1

4

コマンドの結果を保存するには、式を使用できますvar=$(command)

あなたの場合、

last_dir=$(ls -tr ParentFolder | tail -1)

それで、あなたはできるcp $last_dir /another/path、など。

ちなみに、解析ls はあまり最適ではないことに注意してください。そのため、ディレクトリ名に常に今日の日付が含まれていることがわかっている場合は、次のdateコマンドで取得できます。

$ date
Thu Oct  3 11:02:28 CEST 2013

そしてそのオプション:

$ date "+%Y-%m-%dT%H%M%z"
2013-10-03T1108+0200
于 2013-10-03T09:02:36.513 に答える