✨ 复制成功!

以文会友,打造好学人设!

📋 已复制到剪贴板:

字符的尊卑之别

创建时间:2022-04-17 更新时间:2022-04-17 阅读次数:1199 次

人分三六九等,地分东南西北,虽然众生皆平等,但是尊卑仍然有别。汉语习惯是以右为尊,成语“无出其右”,将右视为尊,将左视为卑。放眼印度,尊卑更加严重,其种姓制度举世皆知。

人类的文字和符号的演化进程,总有先后之序,映射到shell世界,亦充斥着尊卑之说。虽然#$是对孪生兄弟,都是命令提示符,但是#表示root用户,内含尊贵之意,$表示非root用户,暗含卑微之义。

延伸到更广阔的天地,这种差别同样明显。空间分为有序和无序之别,犹如列表和集合。在用法上,#常用于表示序数,例如楼房号等。后来,我查阅百科发现,跟我的猜想类似:在unicode编码中建议称#number sign,因为它常用于表示序数。

获取字符串变量,只需${var}足矣,但是要想获取字符串长度,带有量的内涵,则需要#加持,即为${#var},如下所示:

website=shelltalk

echo ${#website}

字符串是字符的数组构成,推而广之,则${#var}也适用于获取数组的长度,即为${#var[@]}

另外,传递给脚本或函数的参数,隐含着数组之意,所以$#用于表示传递给脚本或函数的参数个数。与$#对应的是$$,而$$表示为当前shell进程ID。

备注:在CSS样式表中,ID选择器,以#号开头,只能出现一次;类选择法,以点开头,可以多次。

本教程共16节,当前为第8节!
本教程最新修订时间为:2026-08-21 21:27:37

📌 面试天下网:一款服务于大一新生的口袋书,让大家在无聊的公共课上可以学习大模型技术!
📌 网站公告:【悬赏 200 元/篇】寻找“大模型面试战场”的一手回忆录

评论专区

评论加载中...