Linux操作命令
1.更改Linux字符界面:
[root@rhel~]# systemctl get-default (查看Linux系统启动的默认目标)
graphicl.target (表示的是图形化界面)
[root@rhel~]# systemctl set-default multi-user.target (修改默认目标,multi-user.target 表示字符界面)
注:进入救援模式的操作 [root@rhel~]#systemctl set-default rescue.target
2.Linux系统常用的关闭/重启系统的命令有 shutdown、halt、reboot,它们的工作过程是不同的:
命令语法: shutdown [选项] [时间] [警告信息]
选项 |
选项含义 |
-k |
并不执行shutdown,只是发出警告信息给所有用户 |
-r |
重新启动系统 |
-h |
关闭系统 |
-c |
取消运行shutdown |
- 【例1-1】立即关闭系统
- [root@rhel~]#shutdown -h now
- 【例1-2】定时关闭,如定30分钟之后关闭系统
- [root@rhel~]#shutdown -h +30
- 【例1-3】立即重新启动系统,并发出警告信息
- [root@rhel~]#shutdown -r now “system will be roboot now.”
- 【例1-4】定时重启,如定时在2点12分重新启动系统
- [root@rhel~]#shutdown -r 02:12
命令语法:[选项]
选项 |
含义 |
-w |
并不是真正关闭系统,只是写入到/var/log/wtmp文件中 |
-d |
关闭系统,不会记录到/var/log/wtmp日志文件中 |
-f |
没有调用shutdown 而强制关闭系统 |
- 【例1-5】使用halt命令关闭系统
- [root@rhel~]#halt
- 【例1-6】reboot重启系统
- [root@rhel~]#reboot
- 【例1-7】模拟重启系统(在日志是有记录,不会真的重启)
- [root@rhel~]#reboot -w
- 【例1-8】不调用shutdown而强制重启系统
- [root@rhel~]#reboot -w
3.使用man手册页
命令语法:man [选项] [名称]
【例1-9】显示pwd命令的man手册页
[root@rhel~]#man -pwd
.4使用--help选项获取帮助
命令语法:[命令] --help
【例1-10】使用--help查看mkdir命令的帮助信息
[root@rhel~]#mkdir --help
5.Shell命令可能含一些选项和参数
格式:[Shell命令] [选项] [参数]
【例2-1】[root@rhel~]# ls -l /root
其中“-l”是命令ls 的一个选项,而/root则是参数
选项有短命令行选项和长命令行选项
【例2-2】短命令行选项
[root@rhel~]# ls -l /root
两种方法实现的效果一样:
[root@rhel~]# ls -l -a /root 和 [root@rhel~]# ls -la /root
【例2-3】长命令行选项
[root@rhel~]# ls --size /root
6.在Linux系统中命令可以分为两大类:
如果是bash内置的命令,则由bash负责回应;如果是应用程序,那么Shell会找出该应用程序,然 后将控制权交给内核,由内核执行该程序,执行完之后,再将控制权交回给Shell。
使用which命令可以查看哪些命令是bash内置的命令,哪些是应用程序。
【例2-4】查看echo和ls命令
[root@rhel~]# which echo
/user/bin/echo
[root@rhel~]# which ls
Alias ls=’ls --color=auto’
/user/bin/ls
7.使用bash的常用控制组合键
组合键 |
功能 |
Ctrl + l |
清屏 |
Ctrl + o |
执行当前命令,并选择上一条命令 |
Ctrl + s |
阻止屏幕输出 |
Ctrl + q |
允许屏幕输出 |
Ctrl + c |
终止命令 |
Ctrl + z |
挂起命令 |
Ctrl + m |
相当于按回车键 |
Ctrl + d |
输入结束,即EOF的意思,或者注销Linux系统 |
8.使用bash的光标操作,通过组合键可以快速进行光标操作
组合键 |
功能 |
Ctrl +a |
移动光标到命令行首 |
Ctrl +e |
移动光标到命令行尾 |
Ctrl +f |
按字符前移(向右) |
Ctrl +b |
按字符后移(向左) |
Ctrl +xx |
在命令行首和光标之间移动 |
Ctrl +u |
删除从光标到命令行首的部分 |
Ctrl +k |
删除从光标到命令行尾的部分 |
Ctrl +w |
删除从光标到当前单词开头的部分 |
Ctrl +d |
删除光标处的字符 |
Ctr1 +h |
删除光标前的一个字符 |
Ctrl +y |
插入最近删除的单词 |
Ctrl + t |
交换光标处字符和光标前面的字符 |
Alt+f |
按单词前移(向右) |
Alt+b |
按单词后移(向左) |
Alt+d |
从光标处删除至单词尾 |
Alt+c |
从光标处更改单词为首字母大写 |
Alt+u |
从光标处更改单词为全部大写 |
Alt+1 |
从光标处更改单词为全部小写 |
Alt+t |
交换光标处单词和光标前面的单词 |
Alt+ Backspace |
与Ctrl+w功能类似,分隔符有些差别 |
9.特殊字符,在Linux系统中,许多字符对于Shell来说是具有特殊意义的
符号 |
功能 |
~ |
用户主目录 |
` |
反引号,用来命令替代(在Tab键上面的那个键) |
# |
注释 |
$ |
变量取值 |
& |
后台进程工作 |
( |
子Shel1开始 |
) |
子Shell结束 |
\ |
使命令持续到下一行 |
| |
管道 |
< |
输人重定向 |
> |
输出重定向 |
>> |
追加重定向 |
‘ |
单引号(不具有变数置换的功能) |
“ |
双引号(具有置换的功能) |
/ |
路径分隔符 |
; |
命令分隔符 |
10.通配符,如果命令的参数中含有文件名,那么通配符可以便利操作。
符号 |
功能 |
? |
代表任何单一字符 |
* |
代表任何字符 |
[字符组合] |
[字符组合] 在中括号中的字符都符合,比如[a-z]代表所有的小写字母 |
[!字符组合] |
[字符组合] 不在中括号中的字符合,比如[!0-9]代表非数字的都符合 |
11.Shell实用功能
【例2.5】
[root@rhel~]# cd/u
在操作Linux系统的时候,每一条操作命令都会记录到命令历史中,历史命令会按照序列排列。
命令语法:history [选项]
选项 |
选项含义 |
-c |
清除命令历史记录 |
-w |
将当前的历史命令写到.bash_history文件,覆盖.bash_history文件的内容 |
-a |
将目前新增的history历史命令写入.bash_history文件 |
-n |
显示最近n个命令历史记录,n代表数字 |
-r |
读取历史文件的内容,并把它们作为当前历史 |
举例 |
描述 |
!! |
运行上一个命令 |
!6 |
运行第6个命令 |
!8 |
运行第8个命令并在命令后面加上/test |
!?CF? |
运行上一个包含CF字符串的命令 |
!ls |
运行上一个1ls命令(或以 ls开头的历史命令) |
!ls:s/CF/G |
运行上一个1s命令,其中把CF替换成G |
fc |
编辑并运行上一个历史命令 |
fc 6 |
编辑并运行第6条历史命令 |
^boot^root^ |
快速替换。将最后一个命令中的boot替换为root后运行 |
! -5 |
运行倒数第5个命令 |
!$ |
运行前一个命令最后的参数 |
快捷键或组合键 |
描述 |
↑(向上箭头) ↓(向下箭头) |
查看上一个命令 / 查看下一个命令 |
Ctrl + p |
查看历史中的上一个命令 |
Ctrl + r |
查看历史列表中的下一个命令 |
Ctrl + n |
向上搜索历史列表 |
Alt +p |
向上搜索历史列表 |
Alt +> |
移动到历史列表末尾 |
使用“;”命令时先执行命令1,不管命令1是否出错,接下来就执行命令2
命令语法:命令1;命令2
[root@rhel~]#ls /boot;du -hs /root
config-3.10.0-327.el7.×86_64
ext1inux
grub2
initramfs-0-res cue-695707d564a94beba0e784062566b7e0.img
initramfs-3.10.0-327.e17.×86_64.img
initramfs-3.10.0-327.el7.x86_64kdump.img
initrd-plymouth.img
symvers-3.10.0-327.el7.x86_64.gz System.map-3.10.0-327.el7.x86_64
vmlinuZ-0-rescue-695707d564a94beba0e 784062566b7e0 vmlinuz-3.10.0-327.el7.x86_64
4.4 M /root
//先在屏幕上列出/boot目录中的所有内容,然后列出目录/root及其子目录所占用的磁盘空间大
小
使用"&&”命令时,只有当命令1正确运行完毕后,才能执行命令2。
命令语法: 命令1&&命令2
【例3.16】使用排列命令“&&"同时执行两个命令。
[root@rhel~]#ls -a /root/bogusdir&&du -sh ls:无法访问/root/bogusdir:没有那个文件或目录
//将返回"ls:无法访问/root/bogusdir:没有那个文件或目录",而"du -sh"命令根本没有运行,因为第一个命令都没有成功执行
下面讲解一个例子。杀死一个名为less 的进程前先得用命令pidof 找出相应的进程号,然后以 这个进程号为参数运行kill命令,这样就可以结束less进程,使用以下命令。
[root@rhel~]#pidof less 7552
//less进程号为7552
[root@rhel~]#ki1l-97552
//杀死进程号为7552的进程(也就是less进程)
【例3.17】使用命令替换功能杀死less进程。
[root@rhel~]#ki11 -9 $(pidof less)
//pidof less命令的输出7552作为命令ki11 -9的参数,然后就可以杀死该进程了