Shell的含义与命令的格式

  1.Shell Linux 系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并
把它送入内核去执行
  shell 也被称为 LINUX 的命令解释器( command interpreter ) 
  shell 是一种高级程序设计语言
  sh Steve Bourne
  bash Bourne-Again Shell GPL CentOS Ubuntu 默认使用
  csh c shell , C 语言风格
  tcsh
  ksh Korn Shell, AIX 默认 shell
  zsh MacOS 默认 shell
  GNU Bourne-Again Shell(bash) GNU 计划中重要的工具软件之一,目前也是 Linux 标准的 shell ,与
sh 兼容
  显示当前使用的shell   # echo ${SHELL}
  显示当前系统使用的所有shell    cat /etc/shells
  设置主机名   #hostname NAME    范例:[root@centos8 ~ ]#hostname bj-yz-k8s-node1-100-10.magedu.com
  注意:主机名不要使用下划线
  2.命令提示符:prompt    范例:[root@localhost ~]#
  # 管理员
  $ 普通用户
  显示提示符格式:  
  [root@centos8 ~] #echo $PS1
\[\e[1;35m\][\u@\h \W]\$\[\e[0m\]
  修改提示符格式范例 :
PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"
PS1="\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\
[\e[0m\]\\$"
  提示符格式说明:
  \e 控制符 \033
  \u 当前用户
  \h 主机名简称
  \H 主机名
  \w 当前工作目录
  \W 当前工作目录基名
  \t 24 小时时间格式
  \T 12 小时时间格式
  ! 命令历史数
  # 开机后命令历史数
   范例: 持久保存提示符格式相关变量 PS1
[root@centos8 ~]# echo 'PS1="\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\
[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\\$"' > /etc/profile.d/env.sh
[root@centos8 ~]#cat /etc/profile.d/env.sh
PS1="\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\
[\e[0m\]\\$"
[root@centos8 ~]# exit
logout
Connection closed by foreign host.
Disconnected from remote host(centos8) at 15:28:38.
Type `help' to learn how to use Xshell prompt.
[c:\~]$
Reconnecting in 1 seconds. Press any key to exit local shell.
.
Connecting to 10.0.0.100:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
Activate the web console with: systemctl enable --now cockpit.socket
Last login: Wed Dec 11 15:28:34 2019 from 10.0.0.1
[15:28:40 root@centos8 ~]#
  3.
  执行命令
  执行命令过程
输入命令后回车,提请 shell 程序找到键入命令所对应的可执行程序或代码,并由其分析后提交给内核分
配资源将其运行起来
  shell 中可执行的两类命令
内部命令:由 shell 自带的,而且通过某命令形式提供
外部命令:在文件系统路径下有对应的可执行程序文件  
 
shell 中可执行的两类命令
内部命令:由 shell 自带的,而且通过某命令形式提供
外部命令:在文件系统路径下有对应的可执行程序文件
执行外部命令
查看外部命令路径:
Hash 缓存表
系统初始 hash 表为空,当外部命令执行时,默认会从 PATH 路径下寻找该命令,找到后会将这条命令的
路径记录到 hash 表中,当再次使用该命令时, shell 解释器首先会查看 hash 表,存在将执行之,如果不
存在,将会去 PATH 路径下寻找,利用 hash 缓存表可大大提高命令的调用速率
hash 命令常见用法
hash 显示 hash 缓存
hash -l 显示 hash 缓存,可作为输入使用
hash -p path name 将命令全路径 path 起别名为 name
hash -t name 打印缓存中 name 的路径
hash -d name 清除 name 缓存
执行外部命令
查看外部命令路径:
Hash 缓存表
系统初始 hash 表为空,当外部命令执行时,默认会从 PATH 路径下寻找该命令,找到后会将这条命令的
路径记录到 hash 表中,当再次使用该命令时, shell 解释器首先会查看 hash 表,存在将执行之,如果不
存在,将会去 PATH 路径下寻找,利用 hash 缓存表可大大提高命令的调用速率
hash 命令常见用法
hash 显示 hash 缓存
hash -l 显示 hash 缓存,可作为输入使用
hash -p path name 将命令全路径 path 起别名为 name
hash -t name 打印缓存中 name 的路径
hash -d name 清除 name 缓存
  4.命令别名
对于经常执行的较长的命令,可以将其定义成较短的别名,以方便执行
显示当前 shell 进程所有可用的命令别名
定义别名 NAME ,其相当于执行命令 VALUE
范例 :
撤消别名: unalias
注意:在命令行中定义的别名,仅对当前 shell 进程有效
如果想永久有效,要定义在配置文件中
仅对当前用户: ~/.bashrc
对所有用户有效: /etc/bashrc
编辑配置给出的新配置不会立即生效,bash进程重新读取配置文件   : source /path/to/config_file
. /path/to/config_file
 
如果别名同原命令同名,如果要执行原命令,可使用
\ALIASNAME
“ALIASNAME”
‘ALIASNAME’
command ALIASNAME
/path/commmand # 只适用于外部命令
 
  5.命令格式
   COMMAND [OPTIONS...] [ARGUMENTS...]
  选项:用于启用或关闭命令的某个或某些功能
短选项: UNIX 风格选项, -c 例如: -l, -h
长选项: GNU 风格选项, --word 例如: --all, --human
BSD 风格选项: 一个字母,例如: a ,使用相对较少
参数:命令的作用对象,比如 : 文件名,用户名等
范例:
[root@centos8 ~]#id -u wang
1000
[root@centos8 ~]#ls -a
[root@centos8 ~]#ls --all
[root@centos8 ~]#free -h
[root@centos8 ~]#free --human
[root@centos8 ~]#ps a
注意:
多个选项以及多参数和命令之间使用空白字符分隔
取消和结束命令执行: Ctrl+c Ctrl+d
多个命令可以用 ";" 符号分开
一个命令可以用 \ 分成多行
 
 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值