Поведение расширения Bash

В качестве двухэтапного -процесса сначала создается целевой каталог (, если он еще не существует ), а затем копируется файл (, если mkdirудалось ).

dir=/some/path/to
mkdir -p "/newdir/$dir" && cp "$dir/file" "/newdir/$dir"

В качестве функции оболочки (обрабатывает только копирование одного файла):

cp_parents () {
    source_pathname=$1
    target_topdir=$2

    mkdir -p "$target_topdir/${source_pathname%/*}" && cp "$source_pathname" "$target_topdir/$source_pathname"
}

Затем,

$ cp_parents /some/path/to/file /newdir
3
29.05.2020, 22:41
0 ответов

Теги

Похожие вопросы