打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
SHELL十三问之二:shell prompt(PS1) 与 Carriage Return(CR) 的关系?

当你成功登录进一个文字界面之后,大部份情形下,你会在荧幕上看到一个不断闪烁的方块或底线(视不同版本而别),我们称之为*游标*(coursor)游标的作用就是告诉你接下来你从键盘输入的按键所插入的位置,且每输入一键游标便向右边移动一个格子,若连续输入太多的话,则自动接在下一行输入。

假如你刚完成登录还没输入任何按键之前,你所看到的游标所在位置的同一行的左边部份,我们称之为*提示符号*(prompt)。提示符号的格式或因不同系统版本而各有不同,

FreeBSD上,只需留意最接近游标的一个可见的提示符号,通常是如下两者之一:
$:给一般使用者账号使用
#:给root (管理员)账号使用

 

事实上,shell prompt的意思很简单:
   
*shell告诉使用者:您现在可以输入命令行了。我们可以说,使用者只有在得到shell prompt才能打命令行,而cursor是指示键盘在命令行所输入的位置,使用者每输入一个键,cursor就往后移动一格,直到碰到命令行读进CR(Carriage Return,由Enter键产生)字符为止。
CR的意思也很简单:
   
*是使用者告诉shell:老兄你可以执行我的命令行了。严格来说:
   *所谓的命令行,就是在shell promptCR字符之间所输入的文字。(思考:为何我们这里坚持使用CR字符而不说Enter键呢?答案在后面的学习中揭晓。)

 

不同的命令可接受的命令行格式或有不同,一般情况下,一个标准的命令行格式为如下所列command-name options argument

若从技术细节来看,shell会依据IFS(Internal Field Seperator)command line所输入的文字给拆解为"字段"(word)。然后再针对特殊字符(meta)先作处理,最后再重组整行command line

 

其中的IFSshell预设使用的字段分隔符,可以由一个及多个如下按键组成:
*空格键(White Space)
*表格键(Tab)
*回车键(Enter)


系统可接受的命令名称(command-name)可以从如下途径获得:
*明确路径所指定的外部命令
*命令别名(alias)
*自定义功能(function)
* shell内建命令(built-in)
* $PATH之下的外部命令

每一个命令行均必须含有命令名称,这是不能缺少的。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
shell 十三問之第二问:shell prompt(PS1) 與 Carriage Return(CR) 的關係
Fish shell 入门教程
在Windows 7中让命令行带上时钟
《Linux命令行大全》:第一部分第一章:何为shell
Ubuntu命令行提示符参数
关于批处理的学习之二[显示篇]
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服