linux下的文件夹名字区分大小写吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下的文件夹名字区分大小写吗?相关的知识,希望对你有一定的参考价值。

参考技术A

linux下的文件夹名字区分大小写。

Linux是严格区分大小写的,这一点和 Windows不一样,所以操作时要注意区分大小写的不同,包括文件名和目录名、命令、命令选项、配置文件设置选项等,linux中需要大写的东西很少,linux中的命令都是小写的。

比如在windows中创建一个大写A的文件夹,再创建一个小写a的文件夹,Windows就会认为这两个文件夹是同一个文件夹,问是否要替换,所以windows是不区分大小写的。

扩展资料

Linux一切皆文件

Linux中所有内容都是以文件的形式保存和管理的,硬件设备也是文件,这和 Windows完全不同,Windows是通过设备管理器来管理硬件的。Linux的设备文件保存在/dev/目录中,硬盘文件是/dev/sdla-p],光盘文件是/dev/hdc等。

配置IP时,通过setup工具进入配置界面,当配置完成后setup工具会写到IP的配置文件当中,系统在下一次开机的时候,IP还是跟原来配置的一样,也就是说写入到文件当中的内容是永久保存的。相反,有一些只是通过命令来执行,而没有写入到文件当中,重启之后就不会生效。

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

参考技术A linux中批量把文件名大小写转换一哥们从现场打来急电说现在有一个目录,目录下有上千个文件,现在需要把文件名由小写全部转化为大写。首先不能写脚本,那样的话还要教他用vi,
改权限,只能用命令了。字符转换嘛,当然想到的是
tr

www.dnjsb.com
for
file
in
*
;do
mv
$file
`echo
$file
|
tr
'a-z'
'A-Z'`;done过了一会儿这哥们又打电话说,扩展名不要改为大写的,保留为小写就行了。这样明显分段的事情当然要交给
awk
了:
for
file
in
*;do
mv
$file
`echo
$file
|
awk
-F
.
'print
toupper($1).$2'
`;done这样是可以把类似
a.txt
的文件修改了,但有多个扩展名的就没招了,比如
b.tar.gz,还好
awk
支持变量:
www.dnjsb.com
for
file
in
*;do
mv
$file
`echo
$file
|awk
-F
.
'

for
(i
=
1;
i
<=
NF;i++)
if
(i
==
1)
result
=
toupper($i);
else
result
+=
.$i;
print
$result;
'
`;done但结果是错的,一个文件名也没有改变,查了下说gawk才支持toupper,
tolower,换成gawk
还是不对。最后没办法只好找个折衷的方法,先全部转化为大写,然后再将扩展名转回小写:for
file
in
*;
www.dnjsb.com
do
mv
$file
`echo
$file
|
sed
-e
s//.TXT//.txt/g
`;done但是/.并没有被转义成.,
而依然是代表任意字符,这样的话如果basename中含有扩展名就悲剧了。
试了几下发现这样才是转义的:
sed
-e
s/[.]TXT/.txt/g
`;ok.

以上是关于linux下的文件夹名字区分大小写吗?的主要内容,如果未能解决你的问题,请参考以下文章

LINUX环境下对大小写敏感,如何解决

linux vi 下查看文件 不区分大小写命令

如何查看mysql表名字段是不是区分大小写

linux mysql数据库区分大小写吗

mysql常用命令区分大小写吗

oracle11g中的sql语句区分大小写吗