查找文件系统中的长文件名文件 向OOS等对象存储转移数据的时候,因为文件系统兼容性的问题,最好处理掉那些文件名长度大于255的文件,以免出现转移失败的情况 Windows下可以使用Powershell的Get-ChildItem命令方式 Get-ChildItem -r * # 获取文件夹下所有对象 {$_.GetType().Name -match”File” } #获取文件类型的名称 {$_.fullname.length -ge 256} # 文件名长度大于等于256的文件 %{$_.fullname} #打印文件名 Get-ChildItem -r * |? {$_.GetType().Name -match”File” } |? {$_.fullname.length -ge 256} |%{$_.fullname} linux直接利用 length属性即可 find. -type f | awk ‘length> 255’> longfilename-list.txt 附各文件系统的最大文件名长度 文件系统 最大文件名长度 最大文件大小 最大分区大小 ext2 255 bytes 2 TB 16 TB ext3 255 …
Tag Archives: Shell
CentOS使用run-as-user.sh处理运行环境的用户不同问题
很多时候,部署运行环境的用户和实际运行的用户是不同的, 当因为环境限制,当时碰到以下场景的时候,就比较麻烦了,需要编写一个脚本来实现运行。 1.不能使用su和sudo时 2.用户没有shell不支持login时,比如nobody,服务用户 3.使用Docker等容器时 4.使用SSH远程执行命令,但是不能使用登陆用户 实现前提 1.需要运行用户的用户名和用户分组以及密码 2.需要运行用户的PUID和PGID 使用前请修改代码中实际运行的用户名,且用户存在 ./run-as-user.sh 命令 命令参数
Linux文件批量转编码iconv命令
Linux下转换编码可以直接使用iconv命令搞定。支持单个文件和批量处理。 iconv命令可以将一种已知的字符集文件转换成另一种已知的字符集文件。它的作用是在多种国际编码格式之间进行文本内码的转换。 单个文件处理的shell命令 iconv -t utf-8 -f gb2312 source > target # -f 源编码 # -t 目标编码 # -l :列出已知的编码字符集合 # -o file :指定输出文件 # -c :忽略输出的非法字符 # -s :禁止警告信息,但不是错误信息
[Android]升级SDK tools后ant自动编译脚本错误
Android SDK Tools在升级到Version22之后,原来的ant自动编译脚本运行出现错误,导致为Jenkins配置的批处理脚本无法执行,一直发送错误邮件,经过调查后发现,Android SDK Tools升级后文件和目录结构发生了变化,主要包括以下 1.Android SDK Tools 22之后的版本中tools目录中将不包含 tools\zipalign.exe tools\sqlite3.exe 以上两个文件,但是文件对应移动到了各自的platform-tool和build-tools下面,对应路径如下 build-tools\android-xx\zipalign.exe platform-tools\sqlite3.exe 如果需要使用时,需要手动复制到tools下,或者放到PATH变量中去。
[Android]使用Emma进行单体测试代码覆盖率分析
使用Eclipse或Google的ADT Bundle集成开发环境进行android单体测试时,受开发工具的局限,目前暂时无法直接使用常规的插件(例如:eclemma,Clover Eclipse Plugin等)来获取单体测试代码覆盖率。一般来说使用以下方法来实现代码覆盖率的查看。 方法1:改变测试代码继承父类为TestCase而非AndroidTestCase。这种方法只能解决不依赖于Android SDK源代码的单体测试。 方法2:使用Android SDK中集成的Emma功能,使用ant进行命令行编译与单体测试。通过以下脚本实现。 这里假设Eclipse的项目名称为MyProject,文件路径如下 ./ #项目主目录 ./src #APP项目主目录 ./test #APP测试项目主目录
[iOS]iPad和iPhone版本xib文件相互转换
iPhone版本APP开发完成后需要再开发iPad版本的APP,需要把iPhone版本的xib文件添加到iPad项目中去,但是Xcode中iPhone和iPad使用的xib格式不能完全互换,此时需要转换xib的文件内容。 分析iPad和iPhone的xib文件,可知两者之间的区别,直接使用source方式打开xib文件,检索替换并保存即可。 以下是iPad和iPhone的xib文件之间的区别,请注意区分xib的文件版本。
[iOS]Makefile交叉编译静态库TA-lib
为了使Cocoa-Charts支持客户端数据计算,需要为Cocoa-Charts增加技术分析数据计算功能,目前比较通用的是TA-lib,但是TA-lib没有提供iOS版本的静态库文件,因此需要在X86平台上交叉编译适用于iPhone模拟器和iPhone真机的TA-lib静态库,用于调试和开发iOS应用程序,使TA-lib支持ARMv7 ARMv7s i386等系统架构的多种iPhone机型或模拟器。