linux_学习之路_11(啊啊啊啊啊啊啊啊啊啊我要硬薅Linux)
继续:改变命令名(别名)
alias chars = command将command的名字重新命名为command,在shell中定义的别名仅在当前shell生命周期中有效,
如果使其永久有效需要更改配置文件
如果要取消,不想使用别名可以用unalias
直接输入alias可以列出当前系统上所定义的所有别名(包括系统定义以及用户定义)
help alias
命令替换:把命令中某个子命令替换为其执行结果的过程;$(command)完成命令替换,或者使用反引号··来执行命令
打印当前目录的命令:echo “the current dircetory is $(pwd)”
eg:创建一个文件:touch ./file-$(date +%F-%H-%M-%S).txt,会创建一个file-2025-02-04-14-33-18.txt的文件;
或者echo “dir is `pwd`”
"":弱引用,可以实现变量替换,本来是一个变量名替换成了变量中的值,
'':强引用,不完成变量替换
··:命令替换符
文件名通配符号:其实是一种命令行展开机制,命令行展开有波浪线展开,花括号展开,也支持名称展开,文件名通配[*?[] ];
*:实现匹配任意长度的任意字符(哪怕没有也可以匹配得到)
?:匹配任意单个字符,
[]:匹配指定范围内的任意单个字符;
[^]:脱字符:匹配除了这个范围内的任意字符
[:space:]:空白字符
[:punot:]:标点符号
[:lower:]:小写字母
[:upper:]:大写字母
[:alpha:]:大小写字母
[:digit:]:数字
[:alnum:]:all number (包含大小写字符,数字)
man 7 glob
eg: 显示第一个字母开头,后面跟的所有的都是数字
显示只要以字母a开头的文件就行 ls a*
Linux 学习之路 11:命令别名、命令替换及文件名通配符
[*]改变命令名(别名)
通过使用 alias 命令,可以为现有的命令起一个新的别名。注意,这种方式定义的别名只有在当前 shell 会话期间有效。如果希望永久生效,需要将别名写入配置文件中(例如 .bashrc、.bash_profile 等)。
alias 新命令名=原命令
取消已定义的别名可以使用 unalias 命令:
unalias 别名
输入 alias 命令可以列出当前系统上所有定义的别名。
alias
更多信息,可以使用 help alias 查看。
[*]命令替换
命令替换是指将某个子命令替换为其执行结果。常用的命令替换方式是使用 $(command) 或者反引号 `` 来完成:
例如,打印当前目录:
echo "The current directory is $(pwd)"
# 或者
echo "The current directory is `pwd`"
创建一个带时间戳的文件:
touch ./file-$(date +%F-%H-%M-%S).txt
[*]引用符
" (弱引用):可以实现变量替换,即变量名会被替换为变量的值。
' (强引用):不进行变量替换。
`` :用来进行命令替换。
[*]文件名通配符
文件名通配符是一种命令行展开机制,支持如下几种匹配规则:
[*] *:匹配任意长度的任意字符(包括空字符)。
[*] ?:匹配任意单个字符。
[*] [字符集]:匹配指定范围内的任意单个字符。
[*] [^字符集]:匹配除了这个范围内的任意字符。
其他字符类匹配包括:空白字符、标点符号、小写字母、大写字母、数字、大小写字母等。
关于更多详细信息,可以查看手册页面:
man 7 glob
例如,显示第一个字母开头,后面跟的所有都是数字的文件:
ls a*
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
[1]