linux文件名变成大写命令|在linux系统中下面哪一条命令可被用来把大写字母转换成小写字母形式

linux文件名变成大写命令|在linux系统中下面哪一条命令可被用来把大写字母转换成小写字母形式的第1张示图

『壹』 linux,编写shell程序,将一个文件名作为程序的参数,把该文件中的英文字母全部转换成大写字母

如果没有指定命令行参数,则直接退出。

如果指定了命令行参数,就把该文件的英文字母转化为大写保存在.caps文件中。支持同时多个参数。

代码如下。

#!/bin/bashif[$#-eq0]thenexit0fiupper(){tr'[a-z]''[A-Z]'<$1>$1".caps"}forfilein$*doupper$filedone

『贰』 linux批量替换文件夹名,文件名,文件内容命令

1.批量改名采用命令rename rename 语法:rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]-v表示显示详细信息,-n表示不实际执行替换,只是看哪些文件会受影响。 -f 表示强制,不管是否有重名。 perlexpr是perl语法的表达式, files则是匹配项。因此,该命令执行结果与perlexpr有关,不一定就是改文件名。实例: 将所有文件名*.html 改为对应的.htmrename 's//.html$//.htm$/' *.html 去bak后缀rename 's//.bak$//' *.bak 将文件名大写改为小写rename 'y/A-Z/a-z/' * 但rename不能递归修改。 2.递归改名,用find+rename将文件名的abc改为xyzfind . -name "abc*" -exec rename 's/abc/xyz/' {} /;该命令可以将当前目录下所有子目录的文件都改名。 3.内容替换,用find+sed将所有ablo 替换为ablozhoufind . -type f -exec sed -i -e "s/ablo/ablozhou/g" {} /;sed 命令 -i 表示 –in-place,文件原地替换。-e 后跟替换表达式

『叁』 linux中修改文件名命令

mv 旧文件名 新文件名

『肆』 linux对文件名大写和小写一样吗

Linux系统下文件名是区分大小写的,文件名采用大小写是不一样的;linux变量、内命令、命令参数容都是区分大小写的。可以追溯到linux系统的开发,linux的内核是使用C语言开发的,C语言区分大小写。所以linux也区分大小写了。

『伍』 编程:在linux/windows 下,输入目录,如何将目录下文件名大小写转换

其它和把字符串的大小转换是一样的一般都是Ucase("字符串")变成大写Lcase("字符串")变成小写

『陆』 linux如何把文件名小写字母改为大写字母

mv 你的文件名 `echo 你的文件名|sed 's/[a-z]/\u&/g'`

『柒』 在linux系统中,下面哪一条命令可被用来把大写字母转换成小写字母形式

|用cat file | tr a-z A-Z > newfile 可以将文件内容转换为大写。cat file | tr A-Z a-z > newfile可以转回换为小写。也可答以用 awk '{print toupper($1)}' file > newfile

『捌』 Linux中批量把文件名大小写转换

linux中批量把文件名大小写转换一哥们从现场打来急电说现在有一个目录,目录下有上千个文件,现在需要把文件名由小写全部转化为大写。首先不能写脚本,那样的话还要教他用vi,改权限,只能用命令了。字符转换嘛,当然想到的是tr:www.dnjsb.comforfilein*;domv$file`echo$file|tr'a-z''A-Z'`;done过了一会儿这哥们又打电话说,扩展名不要改为大写的,保留为小写就行了。这样明显分段的事情当然要交给awk了:forfilein*;domv$file`echo$file|awk-F.'{printtoupper($1).$2}'`;done这样是可以把类似a.txt的文件修改了,但有多个扩展名的就没招了,比如b.tar.gz,还好awk支持变量:www.dnjsb.comforfilein*;domv$file`echo$file|awk-F.'{for(i=1;i<=NF;i++)if(i==1)result=toupper($i);elseresult+=.$i;print$result;}'`;done但结果是错的,一个文件名也没有改变,查了下说gawk才支持toupper,tolower,换成gawk还是不对。最后没办法只好找个折衷的方法,先全部转化为大写,然后再将扩展名转回小写:forfilein*;www.dnjsb.comdomv$file`echo$file|sed-es//.TXT//.txt/g`;done但是/.并没有被转义成.,而依然是代表任意字符,这样的话如果basename中含有扩展名就悲剧了。试了几下发现这样才是转义的:sed-es/[.]TXT/.txt/g`;ok.

『玖』 Linux中编写一个shell脚本将指定目录中的文件的文件全名改为大写,但是命令执行完,shell

bash shell 脚本的方法有多种,现在作个小结。假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限。方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本:复制代码 代码如下:cd /data/shell./hello.sh./的意思是说在当前的工作目录下执行hello.sh。如果不加上./,bash可能会响应找到不到hello.sh的错误信息。因为目前的工作目录(/data/shell)可能不在执行程序默认的搜索路径之列,也就是说,不在环境变量PASH的内容之中。查看PATH的内容可用 echo $PASH 命令。现在的/data/shell就不在环境变量PASH中的,所以必须加上./才可执行。方法二:以绝对路径的方式去执行bash shell脚本:复制代码 代码如下:/data/shell/hello.sh方法三:直接使用bash 或sh 来执行bash shell脚本:复制代码 代码如下:cd /data/shellbash hello.sh或复制代码 代码如下:cd /data/shellsh hello.sh注意,若是以方法三的方式来执行,那么,可以不必事先设定shell的执行权限,甚至都不用写shell文件中的第一行(指定bash路径)。因为方法三是将hello.sh作为参数传给sh(bash)命令来执行的。这时不是hello.sh自己来执行,而是被人家调用执行,所以不要执行权限。那么不用指定bash路径自然也好理解了啊,呵呵……。方法四:在当前的shell环境中执行bash shell脚本:复制代码 代码如下:cd /data/shell. hello.sh或复制代码 代码如下:cd /data/shellsource hello.sh前三种方法执行shell脚本时都是在当前shell(称为父shell)开启一个子shell环境,此shell脚本就在这个子shell环境中执行。shell脚本执行完后子shell环境随即关闭,然后又回到父shell中。而方法四则是在当前shell中执行的。

未经允许不得转载:山九号 » linux文件名变成大写命令|在linux系统中下面哪一条命令可被用来把大写字母转换成小写字母形式

赞 (0)