1. 小红帽首页
  2. Linux资源
  3. Linux实验教程

今天跟大家科普的是:Bash shell

Bash shell

一个命令行是基于文本的界面,可用于向计算机系统输入指令。Linux命令行由一个程序提供,称它为shell。

如果以交互式使用shell,它在等待用户输入命令时显示一个字符串,这称为shell提示符。普通用户启动shell时,默认提示符的结尾是$字符:[student@server0 ~]$,如果以超级用户root运行shell,则$替换为#:[root@server0 ~]#,当打开一个终端就打开一个shell,得到一个命令行界面,就触发一个shell ,触发一个shell,可以得到一个提示符:登陆用户名@主机名 当前目录,方括号里的提示符是由PS1变量提供。

PS1是主提示符变量,也是默认提示符变量。默认值”\s-\v\$“,显示shell类型和版本。

基本上通过设置PS1来定义命令行提示字符即可,最常用的需求就是显示登录的用户名、主目录、主机名等等,举个例子如下:

显示用户名,主机名和动态显示当前目录

-bash-3.00# export PS1=”[\u@\h \w]”

[root@MagicLinux ~]cd /etc

[root@MagicLinux /etc]

注意:如果当前目录是用户的HOME目录,则显示"~"

PS1变量可以使用的参数值有如下:

\d 代表日期,格式为weekday month date,例如:”Mon Aug 1″
\H 完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
\h 仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
\t 显示时间为24小时格式,如:HH:MM:SS
\T 显示时间为12小时格式
\A 显示时间为24小时格式:HH:MM
\u 当前用户的账号名称
\v BASH的版本信息
\w 完整的工作目录名称。家目录会以 ~代替   PS1=”[\u@\h \w]\$”
\W 利用basename取得工作目录名称,所以只会列出最后一个目录
\# 下达的第几个命令
\$ 提示字符,如果是root时,提示符为:# ,普通用户则为:$
\[ 字符”[“
\] 字符”]”
\! 命令行动态统计历史命令次数

因为内核不提供和用户的交互功能,所以需要一个程序提供这种功能,这种程序分为两种:命令行(CLI)和图形界面(GUI),在linux提供CLI的交互程序,我们称为shell 。

今天跟大家科普的是:Bash shell

cat /etc/shells   #可以看到多种shell,对于红帽系统来说,默认采用的是bash这个shell

/bin/sh

/bin/bash

/sbin/nologin

/usr/bin/sh

/usr/bin/bash

/usr/sbin/nologin

/bin/tcsh

/bin/csh

 

chsh -l

#查看系统所有shell

 

echo $SHELL

#查看当前使用的shell

ps

#ps命令用于查看当前进程,可以发现,有一个bash进程

 

echo $PS1

#查看命令提示符的格式

默认的PS1=”[\u@\h \W]\$”,其中\W就是路径的设置选项,大写的W是简洁模式,小写的w为全路径模式。

 

echo $$

#查看当前shell的ID

发布者:rhce_net,转转请注明出处:https://www.rhce.net/786.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

0757-22 129 198

在线咨询:点击这里给我发消息

邮件:rhce@rhce.net

工作时间:周一至周五,全天

QR code