perl 如何创建文件夹下包含文件夹
1个回答
展开全部
比如创建 D:\tmpA\tmpB 这样的目录,那么可以用命令:
mkdir("D:\\tmpA") unless(-d "D:\\tmpA"); #创建 D:\tmpA
mkdir("D:\\tmpA\\tmpB ") unless(-d "D:\\tmpA\\tmpB"); #创建D:\tmpA\tmpB
注:
mkdir("D:\\tmpA") unless(-d "D:\\tmpA"); 整体的意思表示如果不存在目录D:\\tmpA 那么创建目录 D:\\tmpA。
-d "D:\\tmpA“ 表示目录是否存在,如果存在则为真,不存在为假。
如果要判断文件是否存在 则用 -e
mkdir("D:\\tmpA") unless(-d "D:\\tmpA"); #创建 D:\tmpA
mkdir("D:\\tmpA\\tmpB ") unless(-d "D:\\tmpA\\tmpB"); #创建D:\tmpA\tmpB
注:
mkdir("D:\\tmpA") unless(-d "D:\\tmpA"); 整体的意思表示如果不存在目录D:\\tmpA 那么创建目录 D:\\tmpA。
-d "D:\\tmpA“ 表示目录是否存在,如果存在则为真,不存在为假。
如果要判断文件是否存在 则用 -e
更多追问追答
追问
我刚才试过了,你写的上面两句是不存在的时候就创建,存在的时候还是创建啊?我加了
if( not -e "D:\\tmpA\\tmpB"){
mkdir("D:\\tmpA") unless(-d "D:\\tmpA"); #创建 D:\tmpA
mkdir("D:\\tmpA\\tmpB ") unless(-d "D:\\tmpA\\tmpB"); #创建D:\tmpA\tmpB }
else{
print("ggggggg");
}
文件夹已经存在了,还是不执行打印下面的ggggggg
追答
你修改为下面的代码试试:
unless(-d "D:\\tmpA\\tmpB"){
mkdir("D:\\tmpA") unless(-d "D:\\tmpA"); #创建 D:\tmpA
mkdir("D:\\tmpA\\tmpB ") unless(-d "D:\\tmpA\\tmpB"); #创建D:\tmpA\tmpB
}
else{
print("ggggggg");
}
目录存在与否用 -d 文件存在与否采用-e
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询