Скопируйте все файлы из папки в другую - PullRequest
0 голосов
/ 11 сентября 2018

Я хочу скопировать все файлы из папки в другую в Stata.

Я использовал следующий код:

local dlist: dir "$dir" dirs "*"

foreach d of local dlist {

    local file: dir "$dir\"`d'"" files "*.dta"
    foreach f of local file{
       copy `f' "$dir/PROGRAMMATION/INITIALES"
    }   
}

Однако Stata возвращает:

неверный синтаксис

$dir - это фактический каталог, в котором находится этот файл.

1 Ответ

0 голосов
/ 11 сентября 2018

Для меня работает следующее:

global dir /Users/monkey/Downloads

local dlist: dir "$dir" dir "*"

foreach d of local dlist {
    local file: dir "$dir/`d'" files "*.dta"

    foreach f of local file {
       copy "$dir/`d'/`f'"  "/Users/monkey/testdir/`f'"
    }
}   

Обратите внимание, что код будет copy всех файлов набора данных Stata, содержащихся в каждом подкаталоге из /Users/monkey/Downloads в каталог /Users/monkey/testdir/.

Если вы просто хотите copy всех файлов набора данных Stata от /Users/monkey/Downloads до /Users/monkey/testdir/, то достаточно одного цикла:

global dir /Users/monkey/Downloads

local file: dir "$dir" files "*.dta"

foreach f of local file{
    copy "$dir`f'"  "/Users/monkey/testdir/`f'"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...