概念
shell
:壳,命令解释器,负责解析用户输入的命令
分类:
内置命令
(shell
内置
)
,
shell
为了完成自我管理和基本的管理,不同的
shell
内置不同的命令,但是大
部分都差不多
外置命令,在文件系统的某个目录下,有个与命令名称相同的文件
type 命令
作用
查看命令是内置命令、外置命名、
alias
命令
格式
type - 参数 命令名
参数
type -a 列出当前命令可以如何执行type -t 仅列出命令按照哪种方式执行
[root@server ~]# type -a cd
cd 是 shell 内建
cd 是 /usr/bin/cd
[root@server ~]# type cd
cd 是 shell 内建
[root@server ~]# type -t cd
builtin # 内置命令
[root@server ~]# type tree
tree 是 /usr/bin/tree
[root@server ~]# type -t tree
file
[root@server ~]# type wget
wget 是 /usr/bin/wget
[root@server ~]# type ls
ls 是“ls --color=auto”的别名
[root@server ~]# type ping
ping 是 /usr/sbin/ping
[root@server ~]# alias ping='ping -c 5'
[root@server ~]# type ping
ping 是“ping -c 5”的别名
[root@server ~]# ping www.qq.com
PING ins-r23tsuuf.ias.tencent-cloud.net (101.91.22.57) 56(84) 比特的数据。
64 比特,来自 101.91.22.57 (101.91.22.57): icmp_seq=1 ttl=128 时间=31.0 毫秒
64 比特,来自 101.91.22.57 (101.91.22.57): icmp_seq=2 ttl=128 时间=29.2 毫秒
Linux 中的特殊符号
命令别名
作用
别名:命令的快捷方式,对于需要经常执行,且要很长时间输入的长命令很有用。
格式
alias 别名='原命令 - 参数
[root@server ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias ping='ping -c 5' # 上例新建的
alias rm='rm -i'
alias xzegrep='xzegrep --color=auto'
alias xzfgrep='xzfgrep --color=auto'
alias xzgrep='xzgrep --color=auto'
alias zegrep='zegrep --color=auto'
alias zfgrep='zfgrep --color=auto'
alias zgrep='zgrep --color=auto'
常用的别名
untar
由于
tar
命令的参数太多不好记忆,所以将解压缩设为如下:
alias untar='tar -zxvf'
wget
下载大文件时的断点续连,防止网络异常中断:
alias wget='wget -c '
getpass
生成
20
个字符的随机数密码,使用
openssl
命令,但命令又很长不方便,可以设置别名
alias getpass="openssl rand -base64 20"
ping
ping url
时会无限次输出,但其实没多大意义,可以使用
-c
命令将其限制为
5
次输出
alias ping='ping -c 5'
speed
测试网速命令
speedtest-cli
,为了方便使用可以设置别名:
安装
: speedtest-cli
是基于
python
编写的需要使用
pip
工具下载
[root@server ~]# pip install speedtest-cli
bash: pip: command not found...
Install package 'python3-pip' to provide command 'pip'? [N/y] y
* Waiting in queue...
* Loading list of packages....
The following packages have to be installed:
python3-pip-21.2.3-6.el9.noarch A tool for installing and managing Python3
packages
Proceed with changes? [N/y] y
ipe
公网
IP
别名设置:
alias ipe='curl ipinfo.io/ip'
[root@server ~]# alias ipe='curl ipinfo.io/ip'
[root@server ~]# ipe
113.132.176.202[root@server ~]#
c
清屏,一般使用
ctrl + l
快捷键,也可以将
clear
命令定义得更短,这样使用起来更直接,更粗暴。
alias c='clear'
删除别名
格式
unalias 别名
[root@server ~]# alias
[root@server ~]# unalias ping
注意:
在命令行中使用
alias
命令设置的别名仅在该次登入有效,如果重新开启一个
Shell
,或者重新登录系
统,则这些
alias
将无法使用。
在
linux
中提供
alias
永久化的方法:
将别名命令写入到
~/.bashrc
和
/etc/bashrc
文件中
执行
source ~/.bashrc
和
source ~/etc/bashrc
生效