Что-то вроде этого должно работать для зацикливания строк в файле:
while read dir_name; do
cp -pR /dropbox/dev/inbox/$dir_name/* /dropbox/dev/outbox/$dir_name/
done < /dropbox/script/DirList.txt
Вам может понадобиться mkdir -p /dropbox/dev/outbox/$dir_name
, если исходящие каталоги еще не существуют.
Вот что делает du
. Рассмотрим этот пример структуры каталогов, который соответствует тому, что вы описываете в своем вопросе:
$ tree -h root
root
├── [4.0K] bar
│ └── [2.0M] file
├── [256K] file1
├── [256K] file2
├── [256K] file3
├── [256K] file4
└── [4.0K] foo
└── [1.0M] file
2 directories, 6 files
Если я сейчас запущу на нем du
, я получу желаемый результат:
$ du -h root
2.1M root/bar
1.1M root/foo
4.1M root