Linux常用基础命令实例:
- 工具:
- 安装好的Centos7系统 www.mirrors.aliyun.com 下载CentOS-7-x86_64-Everything-1810
- VMware Workstation Pro
- Xshell
- Linux起源:
1991年10月5日,Torvalds在comp.os.minix新闻组上发布消息正式向外宣布他自行编写的完全自有免费的内核诞生(Freeminix-linke kernel sources for 386-AT)
类Unix的内核,在GPL下发布
官网:www.kernel.org
Linux操作系统:
完整的类UNIX操作系统
Linux内核+GNU工具
如:Centos,Ubuntu,Android
1、基础参考命令
1.显示当前使用的shell
[root@elroy ~]# echo ${SHELL}
/bin/bash
2.显示当前系统使用的所有shell
[root@elroy ~]# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/bin/tcsh
/bin/csh
3.type可以用来判断命令是内部命令还是外部命令
builtin为内部反之为外部
[root@elroy ~]# type cd
cd is a shell builtin
[root@elroy ~]# type top
top is /bin/top
4.0.0. alias可以将字符串定义成自己想要自定义功能的命令
[root@elroy ~]# alias a='ls'
[root@elroy ~]# alias
alias a='ls'
[root@elroy ~]# a
anaconda-ks.cfg Downloads fileb fl.s Pictures Desktop file filec fsdfdsfsd Public Templates Documents filea filed initial-setup-ks.cfg Music
取消别名:unalias name 如果使用unalias -a取消所有别名
[root@elroy ~]# unalias a
[root@elroy ~]# 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 rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
4.0.1.将设置的别名永久生效
有两个文件可以写,~/.bashrc文件仅对当前用户,/etc/bashrc文件是对所有用户生效
[root@elroy ~]# echo "alias a='mkdir test'" >> ~/.bashrc
[root@elroy ~]# tail -1 ~/.bashrc
alias a='mkdir test'
命令前面加入\为不使用定义的别名功能使用命令本身原始功能
[root@elroy ~]# \ls
anaconda-ks.cfg Downloads fileb fl.s
5.date命令:显示时间和日期
格式:
date [OPTION]..[+FORMAT]
常用选项
-s:设定系统时间为指定时间STRING
FORMAT格式为:
%% 一个文字的 %
%a 当前locale 的星期名缩写(例如: 日,代表星期日)
%A 当前locale 的星期名全称 (如:星期日)
%b 当前locale 的月名缩写 (如:一,代表一月)
%B 当前locale 的月名全称 (如:一月)
%d 按月计的日期(例如:01)
%D 按月计的日期;等于%m/%d/%y
%F 完整日期格式,等价于 %Y-%m-%d
%g ISO-8601 格式年份的最后两位 (参见%G)
%G ISO-8601 格式年份 (参见%V),一般只和 %V 结合使用
%h 等于%b
%H 小时(00-23)
%I 小时(00-12)
%j 按年计的日期(001-366)
%k hour, space padded ( 0..23); same as %_H
%l hour, space padded ( 1..12); same as %_I
%m month (01..12)
%M minute (00..59)
%n 换行
%N 纳秒(000000000-999999999)
%p 当前locale 下的"上午"或者"下午",未知时输出为空
%P 与%p 类似,但是输出小写字母
%r 当前locale 下的 12 小时时钟时间 (如:11:11:04 下午)
%R 24 小时时间的时和分,等价于 %H:%M
%s 自UTC 时间 1970-01-01 00:00:00 以来所经过的秒数
%S 秒(00-60)
%t 输出制表符 Tab
%T 时间,等于%H:%M:%S
%u 星期,1 代表星期一
%U 一年中的第几周,以周日为每星期第一天(00-53)
%V ISO-8601 格式规范下的一年中第几周,以周一为每星期第一天(01-53)
%w 一星期中的第几日(0-6),0 代表周一
%W 一年中的第几周,以周一为每星期第一天(00-53)
%x 当前locale 下的日期描述 (如:12/31/99)
%X 当前locale 下的时间描述 (如:23:13:48)
%y 年份最后两位数位 (00-99)
%Y 年份
示例:
-s方法是使用,设定日期为2019年3月19日,00时00分00秒
[root@elroy ~]# date -s "2019-3-19 00:00:00"
Tue Mar 19 00:00:00 CST 2019
再次查看时间
[root@elroy ~]# date
Tue Mar 19 00:00:24 CST 2019
[root@elroy ~]# date "+%Y年%m月%d日,%H时%M分%S秒"
2019年03月19日,00时01分33秒
6.cal命令:显示日历,输入cal -y显示整年日历
[root@elroy ~]# cal
March 2019
Su Mo Tu We Th Fr Sa
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
7.关机、重启shutdown 选项后面可以加时间来设置多久执行的分钟数
重启:
[root@elroy ~]# init 6
[root@elroy ~]# shutdown -r now
[root@elroy ~]# reboot
关机:
[root@elroy ~]# poweroff
[root@elroy ~]# halt
[root@elroy ~]# shutdown -h now
[root@elroy ~]# init
8.用户登录信息查看命令
查看当前登录系统的用户
[root@elroy ~]# whoami
root
查看当前所有系统登录的用户
[root@elroy ~]# who
root pts/0 2019-03-20 19:45 (192.168.126.1)
root pts/1 2019-03-20 15:06 (192.168.126.1)
elroy :0 2019-03-20 08:46 (:0)
使用W显示系统当前使用会话及所做操作
[root@elroy ~]# w
00:12:41 up 18:49, 3 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 192.168.126.1 19:45 ? 0.15s 0.03s w
root pts/1 192.168.126.1 15:06 ? 0.04s 0.04s -bash
elroy :0 :0 08:46 ?xdm? 3:22 0.56s /usr/libexec/gnome-session-binary --sess
9.echo命令:显示字符
格式:echo[SHORT-OPTION]...[STRING]...
echo LONG-OPTION
常用选项:
-n:不启动换行;
-e:启用字符的解释功能
回显字符
[root@elroy ~]# echo "abc"
abc
显示PATH变量的值
[root@elroy ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
显示abc不换行
[root@elroy ~]# echo -n "abc"
abc[root@elroy ~]#
10.命令行扩展:$()或``
把一个命令的输入打印给另一命令给的参数
abc[root@elroy ~]# echo "i am `whoami`"
i am root
[root@elroy ~]# echo "i am $(whoami)"
i am root
[root@elroy ~]# echo "i am whoami"
i am whoami
11.大括号扩展:{}
数字、字符扩展
[root@elroy ~]# echo {1..10}
1 2 3 4 5 6 7 8 9 10
[root@elroy ~]# echo {a..f}
a b c d e f
12.命令历史使用方法:
命令历史的配置文件在**~/.bash_histroy
重复前一个命令:
1.按方向键,调出,按回车即执行
2.输入!!并回车执行
[root@elroy ~]# touch test
[root@elroy ~]# ll test
-rw-r--r--. 1 root root 0 Mar 21 09:28 test
[root@elroy ~]# !!
ll test
-rw-r--r--. 1 root root 0 Mar 21 09:28 test
3.输入!-1并回车执行
[root@elroy ~]# !-1
ll test
-rw-r--r--. 1 root root 0 Mar 21 09:28 test
4.history命令查看命令历史记录
[root@elroy ~]# history | head -5
1 ip a
2 history
3 tty
4 stat
5 stat --help
[root@elroy ~]# history | tail -5
198 touch test
199 ll test
200 history | head 5
201 history | head -5
202 history | tail -5
5.输入!n,执行history命令输出对应序号n的命令
[root@elroy ~]# !199
ll test
-rw-r--r--. 1 root root 0 Mar 21 09:28 test
6.!string:
[root@elroy ~]# !his
history | tail -5
201 history | head -5
202 history | tail -5
203 ll test
204 ip a
205 history | tail -5
13.调用上一次命令最后一个参数
1.输入:!$
[root@elroy ~]# ll /etc/ssh/sshd_config
-rw-------. 1 root root 3907 Apr 11 2018 /etc/ssh/sshd_config
[root@elroy ~]# file !$