对不起,打扰了,我试图在我的LAMP服务器上使用PHP代码创建批处理文件夹。我的代码附后:
enter code here
<?php
**//sample .html template**
$out1 =
"<html>
<head>
<title>Test Page</title>
</head>
<body>
GGYY der
</body>
</html>";
**//fetch folder names from .txt file under my website main directory**
$file_name="DirName.txt";
$fp=fopen($file_name,'r');
$content = array();
$i =0;
while(!feof($fp)){
$buffer=fgets($fp,4096);
$content[$i]=$buffer;
$i++;
}
**//create folders base on $content size**
for($j=0; $j<sizeof($content); $j++){
if(mkdir($content[$j],0777))
echo "folder created"."<br>";
else
echo "fail to create"."<br>";
**//create a .html file in created folder**
$mycat = fopen ("./$content[$j]/mycat.html","w");
**//use copy template into mycat.html**
fwrite($mycat, $out1);
fclose ($mycat);
echo "Success";
}
fclose($fp);
?>根据我的代码,我似乎一次单击就创建了几个文件夹,但是当我试图通过SSH FTP连接访问这些文件夹时,它会显示"Directory /xxx/www/xxx/Aquarius :即使目录上有文件夹图标,也没有这样的文件或目录“。
我试图通过Ubuntu命令行连接到我的服务器,cd连接到专用目录并输入ls命令,它显示了我刚才创建的所有文件夹"??“在文件夹名称后面加上标记。我既不能删除文件夹也不能访问文件夹。
我已经花了一整天在这件事上,却找不到答案。如果有人能帮我,我会很感激的。
发布于 2018-03-14 17:59:31
我怀疑你有隐藏的字符让可怕的名字搞砸了。如果该文件是在Windows上创建的,则可能\r\n。
在创建文件夹之前,对每一行进行一个trim()可能是一个很好的解决方法。
现在,要删除带有奇怪名称的目录,请查看ls -i以显示inode编号,并使用find -inum <NUMBER> -exec rmdir {} \;将其清除。
https://stackoverflow.com/questions/49253856
复制相似问题