最近编写常规工作时的数据库清理代码,清理完成后希望数据库可以保存为“当前数据库名称_cleaned.dta”。一开始选择手动输入save 命令,后来发现有c(filename)后,写了一个非常简短的代码用于自动命名保存,如下:
local filename `c(filename)'
while strpos("`filename'","\")!=0 { // 反复判断\符号,直至没有
local filename `=substr("`filename'", strpos("`filename'","\")+1,.)'
// di "`filename' "
}
local filename `=substr("`filename'",1,strlen("`filename'")-4)' // 排除.dta这4个字符
// di "`filename'"
save "`filename'_cleaned.dta"
供参考,谢谢。