ls | sed -n '/[A-Z]/s/.*/mv & \L&/e'

公司以前用的windows server 服务器  文件大小写都一样。  新迁移到centos 服务器上,发现有些上传图片是大写的扩展名。

 <?php
$path=$_SERVER['DOCUMENT_ROOT'].'/uploadfile';//要查找的目录
echo $path;
//var_dump(opendir($path)); //测试系统是否有权限执行
//die('end');
if($handle = opendir($path)){
while(false !== ($file = readdir($handle))){
if($file !='.' && $file !=".."){
if(is_dir($path.'/'.$file)){
nextdir($path.'/'.$file);
}else{
echo $file;
}
}
}
}
/***循环目录***/
function nextdir($dir){
$handle=opendir($dir);
while(false !== ($file=readdir($handle))){
if($file !='.' && $file !='..'){
if(is_dir($dir.'/'.$file)){
nextdir($dir.'/'.$file); }else{
renamejpg($dir.'/'.$file);
}
}
}
}
/**修改文件名**/
function renamejpg($file){
if(substr($file,-3)=='JPG'){
file_put_contents('rename.log',$file."\n",FILE_APPEND);
rename($file,substr($file,0,-3).'jpg');
echo $file.'<br>';
}
} ?>

在本地调试是ok的,但在服务器上不行。发现是权限的问题。服务器php-fpm  是用nobody运行的,没有权限运行opendir.后新建一个php-fpm 用www帐号运行。

最新文章

  1. eclipse版本发展历史
  2. parentNode的兼容性问题
  3. CEF3开发者系列之CEF3入门
  4. JQuery EasyUI validatebox(验证框)
  5. bzoj-3444 3444: 最后的晚餐(组合数学)
  6. MyEclipse9中的不伤眼修改、FreeMarker插件、JQuery提示插件、全屏(FullScreen)插件的安装
  7. 白盒测试之初识gtest工具
  8. 【Unity3D】【NGUI】本地生成API文档
  9. uva 11270 - Tiling Dominoes(插头dp)
  10. Node.js缓冲器
  11. PHP中将ip地址转成十进制数的两种实用方法
  12. javase基础回顾(一)ArrayList深入解析 解读ArrayList源代码(JDK1.8.0_92)
  13. poj 1873 凸包+枚举
  14. Mysql:查询每个月下的数据,根据状态或者年份的sql语句
  15. 处理器 趣事 CPU/GPU/TPU/DPU/BPU
  16. IDA显示字节机器码
  17. mysql count与sum的区别
  18. 8. String to Integer (整数的溢出)
  19. 移动端meta行大全
  20. Java实现后缀表达式建立表达式树

热门文章

  1. vim下缩进及高亮设置
  2. HDOJ 2081 手机短号
  3. Power Strings - POJ 2406(求循环节)
  4. MYSql查詢一段時間記錄
  5. 去除TFS版本控制信息
  6. 系统自带.net版本
  7. 【LeetCode】Swap Nodes in Pairs
  8. C#自定义事件:属性改变引发事件示例
  9. python之Lambda函数---笔记
  10. Python开发【第七篇】:面向对象 和 python面向对象(初级篇)(上)