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帐号运行。

在linux下将当前目录文件全部小写含目录名的更多相关文章

  1. [转帖]linux下的find文件查找命令与grep文件内容查找命令

    linux下的find文件查找命令与grep文件内容查找命令 https://www.cnblogs.com/shileima/p/8431393.html 在使用linux时,经常需要进行文件查找. ...

  2. 【Linux学习】Linux下用户组、文件权限详解

    原文地址:http://www.cnblogs.com/123-/p/4189072.html Linux下用户组.文件权限详解 用户组 在linux中的每个用户必须属于一个组,不能独立于组外.在li ...

  3. Linux下执行.sh文件

    Linux下执行.sh文件有两种情况: 一.直接./加上文件名.sh,如运行hello.sh为./hello.sh[hello.sh必须有x权限] 二.直接sh 加上文件名.sh,如运行hello.s ...

  4. linux下SVN忽略文件/文件夹的方法

    linux下SVN忽略文件/文件夹的方法 假设想忽略文件temp 1. cd到temp所在的目录下: 2. svn propedit svn:ignore . 注意:请别漏掉最后的点(.表示当前目录) ...

  5. linux下执行.sh文件的方法和语法

    linux下执行.sh文件的方法    .sh文件就是文本文件,如果要执行,需要使用chmod a+x xxx.sh来给可执行权限.       是bash脚本么   可以用touch test.sh ...

  6. linux下删除大量文件提示参数过长解决办法

    linux下删除大量文件提示参数过长解决办法:在当前目录下rm -rf * 在linux中删除大量文件时,直接用rm会出现:-bash: /bin/rm: 参数列表过长的错误. 这时可以用find命令 ...

  7. Linux下zip格式文件的解压缩和压缩

    Linux下zip格式文件的解压缩和压缩 Linux下的软件包很多都是压缩包,软件的安装就是解压缩对应的压缩包.所以,就需要熟练使用常用的压缩命令和解压缩命令.最常用的压缩格式有.tar.gz/tgz ...

  8. Linux下重命名文件或文件夹(mv命令与rename命令)

    在Linux下重命名文件或目录,可以使用mv命令或rename命令 mv ———————————— mv命令既可以重命名,又可以移动文件或文件夹. 例子:将目录A重命名为B mv A B 例子:将/a ...

  9. Linux下几种文件传输命令

    Linux下几种文件传输命令 sz rz sftp scp 最近在部署系统时接触了一些文件传输命令,分别做一下简单记录: 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具 ...

随机推荐

  1. 数据结构(动态树):[国家集训队2012]tree(伍一鸣)

    [问题描述] 一棵n个点的树,每个点的初始权值为1.对于这棵树有q个操作,每个操作为以下四种操作之一: + u v c:将u到v的路径上的点的权值都加上自然数c: - u1 v1 u2 v2:将树中原 ...

  2. [Locked] Binary Tree Upside Down

    Binary Tree Upside Down Given a binary tree where all the right nodes are either leaf nodes with a s ...

  3. Java实现SSH模式加密原理及代码

    一.SSH加密原理 SSH是先通过非对称加密告诉服务端一个对称加密口令,然后进行验证用户名和密码的时候,使用双方已经知道的加密口令进行加密和解密,见下图: 解释:SSH中为什么要使用非对称加密,又使用 ...

  4. sl4j记录

  5. 分享一个linux和linux的文件传输【scp无密码传输】

    很多时候,本地测试服务器想把文件传到线上服务器的时候,很多人都是通过登陆线上服务器ssh 传输,这样挺危险的,很多弊端....所以我找了下方法,发现scp挺好用的! 模拟环境: 192.168.147 ...

  6. Leetcode - Reverse Words

    比起POJ弱爆了一题,从后往前扫描一遍,O(n)时间,仅仅要注意各种极端情况就可以,不明确通过率为什么仅仅有13%. #include<iostream> #include<stri ...

  7. Android RecyclerView 瀑布流

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout ...

  8. PHP安全编程:跨站脚本攻击的防御(转)

    跨站脚本攻击是众所周知的攻击方式之一.所有平台上的Web应用都深受其扰,PHP应用也不例外. 所有有输入的应用都面临着风险.Webmail,论坛,留言本,甚至是Blog.事实上,大多数Web应用提供输 ...

  9. [转] javascript对数组的操作

    javascript数组操作大全,数组方法总汇 1. shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = ...

  10. React Native 从入门到原理

    React Native 是最近非常火的一个话题,介绍如何利用 React Native 进行开发的文章和书籍多如牛毛,但面向入门水平并介绍它工作原理的文章却寥寥无几. 本文分为两个部分:上半部分用通 ...