A helpful FAQ from Stata описывает, что аргументы могут быть переданы do
файлам. Мой do
файл выглядит следующим образом:Аргументы командной строки Stata в пакетном режиме
* program.do : Program to fetch information from main dataset
args inname outname
save `outname', emptyok // file to hold results
insheet using `inname', comma clear names case
// a bunch of processing
save `outname', replace
Согласно FAQ, этот сценарий может быть запущен с помощью do filename.csv result.dta
. Когда я запускаю эту команду из Stata, все работает нормально. Однако программа длинная, поэтому я хочу запустить ее в пакетном режиме. Stata имеет another FAQ о пакетном режиме.
Комбинируя информацию из этих веб-страниц, я введите в моей Unix строке:
$ nohup stata -b do program.do filename.csv result.dta &
Stata начинается, но она заканчивается со следующей ошибкой:
. save `outname', emptyok // file to hold results
invalid file specification
r(198);
Немного экспериментирование говорит что Stata никогда не получает два аргумента при запуске программы в пакетном режиме. Каково решение этой проблемы? (? То есть как вы передать аргументы в файл делать, когда работает в пакетном режиме)
Похоже, вы не можете этого сделать. –