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