如何在Linux中 *** 作文件名有空格和特殊字符

如何在Linux中 *** 作文件名有空格和特殊字符,第1张

我们经常遇到文件和文件夹名称。 在大多数情况下,文件/文件夹名称与文件/文件夹的内容相关,并以数字和字符开头。 Alpha数字文件名是相当普遍和非常广泛使用,但是这不是这样的情况,当我们必须处理文件/文件夹名称中有特殊字符。

除了把这样命名的人拖出去打一顿之外,你还是需要学会如何处理这样的文件的。。。详情见上面链接。

可以在空格前加上转义符 \ ,就能达到效果。比如:

~$ ls test\ aa.txt

test aa.txt

~$ rm test\ aa.txt

~$ ls test\ aa.txt

ls: cannot access test aa.txt: No such file or directory

这样就删除了文件。

如果文件的第一个字符不是空格,可以先写几个字符,再用tab键选择,会自动出来带 \ 转义之后的文件名。

\字符的意义:

\(反斜杠) 又叫转义,去除其后紧跟的元字符或通配符的特殊意义。

转义符还可以处理其他特殊符号,比如通用符:*、?、$等,以及 \ 字符本身。只需要在它前面加上 \ 即可。

./ 点号紧跟/表示当前目录(相对路径的写法)。直接 / 表示根目录。

. / 有空格的点号等同于source命令,表示在当前shell环境执行后面的命令或脚本(不加点号默认是新开一个shell执行的)。例如 . /home/test.sh 等同于 source /home/test.sh。

用source执行的脚本所做的任何改变会影响当前shell(如其中有用cd改变目录,脚本执行完后目录就变掉了);如果没用source,就不会影响当前shell。

上述两种情况结合:

. ./test.sh

表示以source方式在当前shell执行当前目录下的test.sh脚本。

对新手来说,为明显区别,建议书写的时候将第二种情况直接写作source而不要用点号。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8679757.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存