Bash基础特性1
用户空间: 命令全部在用户空间交由给Shell翻译后让内核进行执行并返回执行结果
命令相关
Shell程序找到输入命令所对应的执行程序或者代码,并由其分析之后提交给内核分配资源
运行起来之后,将表现为一个或者多个进程
进程:正在运行的程序
Shell中可执行的2类命令
内建命令:Shell自带
[root@test ~]# type cd
cd is a shell builtin
外部命令:某个文件系统路径下有相对应的可执行程序文件
[root@test ~]# type find
find is /usr/bin/find
相关命令:type/whereis/which等命令
[root@test ~]# whereis ls
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz
[root@test ~]# whereis cd
cd: /usr/bin/cd /usr/share/man/man1/cd.1.gz
[root@test ~]# which ls
alias ls='ls --color=auto'
/usr/bin/ls
[root@test ~]# which cd
/usr/bin/cd
命令格式:
<Command> <Options...> <obj/arguments...>
Options: 长短选项
arguments: 命令作用的对象/命令提供的数据
命令执行结果: 失败(非0)或者成功(0)
echo $? : 判断上一条命令执行的结果
[root@test ~]# echo $?
0
[root@test ~]# cat/etc/sysconfig/network-scripts/ifcfg-ens32
-bash: cat/etc/sysconfig/network-scripts/ifcfg-ens32: No such file or directory
[root@test ~]# echo $?
127
注意:
多个选项及参数之间使用空格字符分割,短选项可以合写
取消命令的执行: Ctrl + c
命令历史
查看命令历史: history命令
历史命令文件: ~/.bash_history 上一次shell所保留的命令
登录shell时会读取历史命令文件,并将后续的操作命令添加到历史命令文件中
history命令相关参数:
-a : 追加本地会话执行的命令历史列表到历史文件当中
-d : 删除历史中指定的命令
[root@test ~]# history -d 28 (命令历史ID)
-c :清空历史命令
[root@test ~]# history -c
快捷操作:
!# 调用历史列表中的第#条命令
!string 调用历史列表中最近一条以string开头的命令
!! 调用的是上一条命令
路径补全
Tab键进行路径补全操作,所输入的路径必须要唯一
double Tab键 输出所有符合补全条件的选项
[root@test ~]# cd /etc/sysc
sysconfig/ sysctl.conf sysctl.d/
别名
查看别名: alias
定义别名: alias [name]=[value]
alias ll=’ls -l —color=auto’
[root@test ~]# alias pingdu='ping www.baidu.com'
[root@test ~]# pingdu
取消别名: unalias [name]
---- 对当前会话有效
如果想要对当前用户生效: 需要将别名的定义写入~/.bashrc配置文件中,并让其生效
生效:
立即生效: source .bashrc