找回密码
 注册
搜索
免费空间 免费域名 免费AI 老牌主机商首月仅1美分!27美元/年!Spaceship优惠码 Namecheap优惠码阿里云2核2G3M新老续费同享99元/年!
查看: 945|回复: 17

[程序代码] 3秒搞定空间文件管理php代码(极速复制,删除,上传,修改权限)

[复制链接]
发表于 2009-10-13 13:17:51 | 显示全部楼层 |阅读模式
本帖最后由 leo2351960 于 2009-10-13 13:21 编辑

3秒搞定空间文件管理php代码(极速复制,删除,上传,修改权限)
       呃,讲地很低级,老鸟就表鄙视我了,这代码是偶自己找的,在没有封函数的空间(如神龙主机)可以使用,相当地方便快捷

       众所周知,用FTP上传,复制,删除大量文件是相当慢的,传个wordpress就要半个小时以上,删掉它也要半小时。。。而用简单的php代码上传再打开网页,3秒不到即可搞定上述过程,实在很爽(尤其对于偶这种手机玩网站的...)

注:将文中代码复制保存为xxx.php文件上传到空间打开即可(需要修改的对应修改下)

        1.上传和解压代码(这个神龙手册里有,不过很多人都不看的...)
<code>
<?php
exec("fetch http://cn.wordpress.org/wordpress-2.8-zh_CN.zip");
exec("tar xvfz wordpress-2.8-zh_CN.zip");
?>
</code>

这个就是wordpress的上传解压代码,也可以单独用以下代码来解压文件(同样地也可以获取网络文件)

<code>
<?php
exec("tar xvfz wordpress-2.8-zh_CN.zip");
?>
</code>

       2.复制代码
通常上面的解压会解压到一个新文件夹,而如果想复制到根目录的话,就可以用以下代码了(移动文件的也有,不过为作备份就不介绍了)(这里以神龙空间为例,路径需要自己改)

<code>
<?
exec("cp -Rf /usr/virtual/leo2351960/flysh.co.tv/public_html/wordpress/ /usr/virtual/leo2351960/flysh.co.tv/public_html/");
?>
</code>

上面这个就是把wp文件夹复制到根目录的代码,有两个路径,前面的是需要移动的文件(夹),后面是目标路径,路径须为绝对路径


         3.删除文件(夹)
<code>
<?
exec("rm -r /usr/virtual/leo2351960/flysh.co.tv/public_html/wordpress");
?>
</code>

注意,谨慎删除,此动作太快,后悔来不及(上次不小心删了个文件夹搞得重装一遍)

         4.修改文件(夹)权限
<code>
<?php
exec("chmod -R 777 /v /usr/virtual/leo2351960/flysh.co.tv/public_html/xxx.php");
exec("chmod -R 777 /v /usr/virtual/leo2351960/flysh.co.tv/public_html/up");
?>
</code>

          对应修改下即可完成大量文件文件夹的权限修改,方便!

          5.批量删除相同前缀数据库表

这个是free8的007兄弟找到的(他找到了还pm我,真是好人啊~),顺便贴上

原文见http://www.free8.net/viewthread. ... hlight=%C9%BE%B3%FD

<code>
<?php
function deldata($dbname,$tableflag){
$db_host    = 'localhost';
$db_port    = '3306';
$db_user    = 'username';
$db_pass    = 'password';
$connect =mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($dbname);
$result = mysql_query("show table status from $dbname",$connect);
$data=mysql_fetch_array($result);
    while($data=mysql_fetch_array($result)) {
    $table=mysubstr($data[Name],"_");
        if($table==$tableflag){
        //测试之用
        /*echo $data[Name];
&#160; &#160;&#160; &#160;&#160;&#160;echo "<br>";
&#160; &#160;&#160; &#160;&#160;&#160;echo $table;
&#160; &#160;&#160; &#160;&#160;&#160;echo "<br>";*/
        mysql_query("drop table $data[Name]");
        }
    }
    return true;
}

/*截取某个特定字符前的所有字符函数
*$str 为待截取字符串
*$flag 特定字符如“_”
*/
function mysubstr($str,$flag){
$pos=strpos($str,$flag);
return substr($str,0,$pos);
}
?>

<?php //test
$dbname="database";//数据库名
$tableflag="wp";//要删除的表的前缀,有这个前缀的表才删除,标志出是哪一个用户
deldata($dbname,$tableflag);
//$test=mysubstr("cdb_account_log","_");
//echo $test;
?>
</code>
注意修改上面的username和password还有底下的database和表前缀

OK了,以上就是找到的一些实用的代码,还有很多大家自己找了,偶最喜欢快捷方便的玩意儿~
欢迎各位朋友踩下偶的Blog,见签名~
 楼主| 发表于 2009-10-13 13:19:46 | 显示全部楼层
本帖最后由 leo2351960 于 2009-10-13 13:23 编辑

大家自己删掉<code> </code>。。。。-_-||
发表于 2009-10-13 14:00:39 | 显示全部楼层
是啊,linux主机应该也不支持吧?
 楼主| 发表于 2009-10-13 14:24:59 | 显示全部楼层
linux应该支持的,unix也支持,估计windows不知道
发表于 2009-10-13 15:00:43 | 显示全部楼层
cpanle面板如何看
exec("rm -r /usr/virtual/leo2351960/flysh.co.tv/public_html/wordpress");
?>
这样的绝对路径呢??在哪看??是不是就是网站主目录?
发表于 2009-10-13 15:25:53 | 显示全部楼层
进来顶一下
发表于 2009-10-13 15:51:15 | 显示全部楼层
有权限吗?
 楼主| 发表于 2009-10-21 00:38:57 | 显示全部楼层
#6
01.<?php
02.echo $_SERVER["SCRIPT_FILENAME"];
03.?>
复制保存为.php试试
发表于 2009-10-21 00:40:53 | 显示全部楼层
怎么好像在哪看过...
发表于 2009-10-21 00:50:32 | 显示全部楼层
围观
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|免费吧论坛

GMT+8, 2024-5-12 08:39 , Processed in 0.033545 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表