本节内容
alias
unalias
uname
su
hostname
history
which
wc
w
who
whoami
ping
kill
seq
du
df
free
date
命令详解
1. alias
设置、’查看别名
实例1:查看别名
[root@ken ~]# 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 man='man -M /usr/local/manpage/share/man/zh_CN'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
实例2:设置别名
[root@ken ~]# alias "ken=ls -l"
[root@ken ~]# ken
total
-rw-r--r-- root root Jan :
-rw-r--r-- root root Jan :
drwxr-xr-x root root Jan : .txt
实例3:取消别名
[root@ken ~]# unalias ken
[root@ken ~]# ken
-bash: ken: command not found
2.uname
显示输出系统信息
-a:显示所有的信息
-r: 显示操作系统发行版本
实例1:
[root@ken ~]# uname -a
Linux ken 3.10.-.el7.x86_64 # SMP Fri Apr :: UTC x86_64 x86_64 x86_64 GNU/Linux
实例2:
显示内核版本
[root@ken ~]# uname -r
3.10.-.el7.x86_64
3.su
运行替换用户和组标识的shell
实例1:
-:使得shell为可登录的shell
[root@ken ~]# su - ken
Last login: Fri Jan :: CST on pts/
退出
[ken@ken ~]$ exit
logout
4. hostname
显示并设置主机名
为什么要修改主机名?
是为了名称解析(/etc/hosts)
hostname修改的主机名只是保存在了内存空间,就是说你重启系统就会失效!
实例1:显示主机名
[root@ken ~]# hostname
ken
实例2:设置主机名(重启失效)
[root@ken ~]# hostname ken1
5.history
查看历史命令
实例1:
[root@ken ~]# history
实例2:使用!加上上一个命令的缩写可以再次执行
6. which
显示命令的完整路径
实例1:
[root@ken ~]# which ls
alias ls='ls --color=auto'
/usr/bin/ls
7.wc
统计文本信息
常用选项:
-c: 字节
-w: 单词数量
-l: 统计行数
c(haracter) w(ord) l(ine)
实例1:
[root@ken ~]# cat /etc/passwd | wc -l
实例2:
[root@ken ~]# echo "this is ken" | wc -c
实例3:
[root@ken ~]# echo "this is ken" | wc -w
8.w
显示已经登录的用户以及他们在做什么
实例:
[root@ken ~]# w
:: up days, :, users, load average: 0.61, 0.16, 0.09
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 Mon19 3days .35s .02s -bash
root pts/ 172.20.10.4 : :44m .16s .00s less -s
root pts/ 172.20.10.4 : :43m .02s .02s -bash
root pts/ 172.20.10.4 : : .15s .15s -bash
root pts/ 172.20.10.4 : : .03s .03s -bash
root pts/ 172.20.10.4 : .00s .04s .01s w
root pts/ 172.20.10.4 : .00s .02s .02s -bash
USER:显示登陆系统的用户的帐号名。如果用户重复登录,则该帐号名就会重复显示。
TTY:用户登录的终端代号。登录的形式不同,登录代号也不相同。
FROM:显示用户从何处登录系统。如果是本地登录,则此字段为-,若从远程登录,便会显示远程主机的IP地址或主机名。至于“:0.0”之类的标示,代表该用户是从X Window System以文本模式登录的。
LOGIN@:这是Login At的意思,表示该用户登录系统时的时间(不是登录后经过的时间)。
IDLE:表示用户闲置的时间。这是一个计时器,一旦用户执行任何操作,该计时器便会被重置。
JCPU:以终端的代号区分显示,表示该终端所有相关的进程(process)执行时所消耗的cpu时间。每当进程结束就停止计时,开始新的进程则会重新计时。
PCPU:表示cpu执行程序消耗的时间。
WHAT:表示用户正在执行的程序的名称,如果正在执行文本模式命令,则会显示用户环境的名称。
9. who
显示已经登录的用户
[root@ken ~]# who
root tty1 -- :
root pts/ -- : (172.20.10.4)
root pts/ -- : (172.20.10.4)
root pts/ -- : (172.20.10.4)
root pts/ -- : (172.20.10.4)
root pts/ -- : (172.20.10.4)
root pts/ -- : (172.20.10.4)
10.whoami
显示当前用户
[root@ken ~]# whoami
root
11.ping
向网络主机发送ICMP(检测主机是否在线)
常用选项:
-c: 发送包的数量
-w: 等待时间(当试图检测不可达主机时此选项很有用)
-i<间隔秒数> 指定收发信息的间隔时间。
实例1:
[root@ken ~]# ping -c -w www.baidu.com
PING www.a.shifen.com (163.177.151.110) () bytes of data.
bytes from 163.177.151.110 (163.177.151.110): icmp_seq= ttl= time=81.5 ms
bytes from 163.177.151.110 (163.177.151.110): icmp_seq= ttl= time=97.8 ms
bytes from 163.177.151.110 (163.177.151.110): icmp_seq= ttl= time=90.9 ms --- www.a.shifen.com ping statistics ---
packets transmitted, received, % packet loss, time 2004ms
rtt min/avg/max/mdev = 81.522/90.091/97.811/6.686 ms
12. kill
终止进程(kill后面指定pid号码)
kill可将指定的信息送至程序。预设的信息为SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用SIGKILL(9)信息尝试强制删除程序
-9: 强制终止
执行-15:
- 程序立刻停止
- 当程序释放相应资源后再停止
- 程序可能仍然继续运行
实例:
[root@ken ~]# ps
PID TTY TIME CMD
pts/ :: bash
pts/ :: ps
[root@ken ~]# kill - Connection closed by foreign host. Disconnected from remote host(172.20.10.6) at ::. Type `help' to learn how to use Xshell prompt.
[d:\~]$
实例2:列出所有的信息名称
[root@ken ~]# kill -l
) SIGHUP ) SIGINT ) SIGQUIT ) SIGILL ) SIGTRAP
) SIGABRT ) SIGBUS ) SIGFPE ) SIGKILL ) SIGUSR1
) SIGSEGV ) SIGUSR2 ) SIGPIPE ) SIGALRM ) SIGTERM
) SIGSTKFLT ) SIGCHLD ) SIGCONT ) SIGSTOP ) SIGTSTP
) SIGTTIN ) SIGTTOU ) SIGURG ) SIGXCPU ) SIGXFSZ
) SIGVTALRM ) SIGPROF ) SIGWINCH ) SIGIO ) SIGPWR
) SIGSYS ) SIGRTMIN ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+
) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+
) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+
) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX-
) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX-
) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX-
) SIGRTMAX- ) SIGRTMAX
13.seq
生成数列
实例1:指定结束位置
[root@ken ~]# seq
实例2:指定起始位置和结束位置
[root@ken ~]# seq
实例3:指定起始位置和结束位置以及步长
[root@ken ~]# seq
14.du
文件及目录大小
默认显示一个目录下的所有的文件,最后一行会有大小的总和。
常用选项:
-s: 仅显示总和
-h: 人类易读
实例1:
[root@ken ~]# du -s /root
/root
实例2:
[root@ken ~]# du -sh /root
115M /root
15.df
报告文件系统磁盘空间的使用情况
-h:人类易读
实例1:
[root@ken ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 17G .5G 12G % /
devtmpfs 233M 233M % /dev
tmpfs 245M 245M % /dev/shm
tmpfs 245M 9.1M 235M % /run
tmpfs 245M 245M % /sys/fs/cgroup
/dev/sr0 56M 56M % /mnt
/dev/sda1 1014M 130M 885M % /boot
tmpfs 49M 49M % /run/user/
第一列指定文件系统的名称
第二列指定一个特定的文件系统1K-块1K是1024字节为单位的总内存。用和可用列正在使用中,分别指定的内存量。
使用列指定使用的内存的百分比
而最后一栏"安装在"指定的文件系统的挂载点。
16.free
显示系统中已用和未用的内存空间总和
常用选项:
-m: 以m为单位
-h: 人类易读
-s<间隔秒数> 持续观察内存使用状况。
实例1:
[root@ken ~]# free -m
total used free shared buff/cache available
Mem:
Swap:
实例2:
[root@ken ~]# free -h
total used free shared buff/cache available
Mem: 488M 373M 21M 1.8M 93M 76M
Swap: .0G 423M .6G
实例3:
[root@ken ~]# free -s
total used free shared buff/cache available
Mem:
Swap: total used free shared buff/cache available
Mem:
Swap:
17. date
打印或设置系统日期和时间
常用选项:
-s: 根据 STRING 设置时间
%Y 年(用 4 位表示) (1970...)
%m 月份(用两位表示) (01..12)
%d (月份中的)几号(用两位表示) (01..31)
%H 小时(按 24 小时制显示,用两位表示) (00..23)
%M 分钟数(用两位表示) (00..59)
%S 秒数(用两位表示)(00..60)
%T 时间,按 24 小时制显示(hh:mm:ss)
%F 显示 %Y-%m-%d
实例1:
[root@ken ~]# date '+%F %T'
-- ::
实例2:
[root@ken ~]# date -s "2019-01-13 13:30:00"
Sun Jan :: CST
[root@ken ~]# date
Sun Jan :: CST
练习题
1、如何通过命令行重启linux操作系统?
2、系统重要文件需要备份,如何把/etc/passwd备份到/tmp目录下?
3、如何查看系统最后创建的3个用户?
4、什么命令可以统计当前系统中一共有多少账户?
5、如何创建/tmp/test.conf文件?
6、如何查看/etc/passwd的头3行和尾3行?
7、如何一次性创建目录/text/1/2/3/4?
8、如何最快的返回到当前账户的家目录?
9、如何查看/etc所占的磁盘空间?
10、如何查看当前内核版本
答案:
1、init6或 #reboot
2、cp /etc/passwd /tmp
3、tail -3 /etc/paswwd
4、wc -l /etc/passwd
5、touch /tmp/test.conf
6、head -3 /etc/passwd tail -3 /etc/passwd
7、mkdir -p /text/1/2/3/4
8、cd
9、du -sh /etc
10、uname -r