虚拟终端切换
centos6 : ctrl + alt + F2~F6
/dev/tty2-6
centos7: ctrl + alt + F2~F6
/dev/tty2-6
图型化终端切换
centos6: ctrl + alt + F1
/dev/tty1
centos7: ctrl + alt + F1
/dev/tty1
远程连接程序 XShell、SecureCrt、Putty
Shell:人机交互的语言
GUI:Gnome、KDE、Windows、IOS、Android
CLI:Dos、cmd、powershell、sh、
cat #查看文件内容
[root@centos6 ~]# cat /etc/shells 查看当前系统所安装的shell
[root@centos6 ~]# echo $SHELL 查看当前使用的何种shell
type #查看命令的类型
which 查看命令的路径
enable 查看所有已启用的内部命令
-n 查看所有已禁用的内部命令
-a 查看所有的内部命令
enable command 启用指定的内部命令
enable -n command 禁用指定的内部命令
配合 | wc -l 可查看数量 实例:enable | wc -l
命令执行的优先顺序
alias > 内部 > 外部(hash > PATH)
--------------------------------------------------------------------------
hash
hash 显示已缓存的外部命令的路径
hash -d command 删除指定命令的hash缓存
hash -r 删除所有缓存
---------------------------------------------------------------------------
alias 别名
alias copy=cp
alias copy='cp -p -r'
alias #查看别名
unalias 别名名字 #取消别名
unalias -a #取消所有别名
写入~/.bashrc
gedit ~/.bashrc
临时使某条命令不受别名影响的方法:
1.路径执行命令
如:/bin/ls
2.\ls
3.'ls'
4."ls"
---------------------------------------------------------------------------------------
Shell的命令格式
command option arguments
options 选项 启用命令的某项功能,从而更改命令的功能
arguments 参数 改变命令作用的对象
短选项
-c
-ca = -c -a
长选项
--word
注意:
#多个选项以及多个参数和命令之间使用空白字符分隔。 实例:touch 11 aa bb cc dd
#多个命令可以用;符号分开。 实例:ls;pwd;enable
#一个命令可以用\分成多行。 实例:hist\or\y
#取消和结束命令执行:Ctrl+c,Ctrl+d
------重要-------
命令行扩展、被扩起来的集合。
$的用法
$varname 引用变量的值
实例:echo $SHELL
$()或`` 命令行扩展:表示引用命令执行的结果
实例:
echo "This system's name is $(hostname)" #hostname为被引用的命令。
$[]或$(())
实例:
[root@centos6 ~]# echo $[2+3]
5
${}或"$varname"
打印重复字符串的简化形式,强调变量名的起止范围
实例:
[root@centos6 ~]# echo {-3..9}
-3 -2 -1 0 1 2 3 4 5 6 7 8 9
[root@centos6 ~]# echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
[root@centos6 ~]# echo {A..Z}
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
[root@centos6 ~]# echo {A..z}
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z
[root@centos6 ~]# echo {3..10..3}
3 6 9
Tab键
单击:
命令补全 用户给定字符是有唯一对应的命令,直接补全。
路径补全 把用户给出的字符串当做路径开头,如果路径是唯一,则直接补全。
双击:
命令【2Tab】 显示所有子命令或文件补全
字符串【2Tab】以‘字符串’开头的命令
/【2Tab】 显示所有根目录下一级目录,包括隐藏目录
./【2Tab】当前目录下子目录,包括隐藏目录
*【2Tab】当前目录下子目录,不包括隐藏目录
~【2Tab】显示所有用户列表
$【2Tab】显示所有变量
---------------------------------------------------------------------------------------
date
[root@centos6 ~]# date "+%Y年%m月%d日 %H时%M分%S秒 星期2"
2018年05月15日 15时59分43秒 星期2
[root@centos6 ~]# date "+%F %T"
2018-05-15 16:00:07
[root@centos6 ~]# date +%s #从1970年到现在的时间戳
1526371345
[root@centos7 app]# date -d'-2 day' #显示前天的时间
Fri May 18 18:23:42 CST 2018
[root@centos7 app]# date -d'-2 day' +%F #前天的日期
2018-05-18
[root@centos6 ~]# date -s '2020-1-5 12:30:50'
Sun Jan 5 12:30:50 CST 2020
clock/hwclock
clock/hwclock #查看硬时间
-s #以硬件时钟为准,校正系统时钟。
-w #以系统时钟为准,校正硬件时钟。
---------------------------------------------------------------------------
关机
init 0
poweroff
shutdown #Centos7有用
shutdown -h now
+xx #xx钟后关机
20:00 #晚上20点正关机
重启
init 6 #重启
reboot #重启
shutdown -r #重启
--------------------------------------------------------------------
whoami #显示当前的用户名
who am i #显示当前的用户名,终端,登录时间(来源IP)
who #显示当前系统的所有登录信息
w #详细显示当前系统的所有登录信息
--------------------------------------------------------------------
screen
安装screen
centos6:
在虚拟机上操作,加载好光盘centos6-dvd1
[root@centos6 ~]# cd /media/CentOS_6.9_Final/Packages/
[root@centos6 Packages]# rpm -ivh screen-4.0.3-19.el6.x86_64.rpm
centos7:
在虚拟机上操作,加载好光盘centos7-everything
[root@centos7 ~]# mount /dev/cdrom /media/
mount: /dev/sr0 is write-protected, mounting read-only
[root@centos7 ~]# rpm -ivh /media/Packages/screen-4.1.0-0.25.20120314git3c2946.el7.x86_64.rpm
screen -S sessionname #创建screen
Ctrl+a,d #剥离当前screen会话【先按Ctrl键后,然后点击a键,释放后在按d键】
screen -x sessionname #加入screen
screen -ls #查看screen
------------------------------------------------------------------
echo
选项
-n 不换行
-e "\a"
实例:
[root@centos6 ~]# echo -e "\a" #发出报警
[root@centos6 ~]# echo -e "aaa\n123\naaaaa"
aaa
123
aaaaa
-------------------------------------------------------------------------
history #历史命令保存在~/.bash_history文件里。
选项
-c #清空命令历史
-a #追加本次会话新执行的命令历史列表至历史文件
-r #读历史文件附加到历史列表
-w #保存历史列表到指定的历史文件
-n #读历史文件中未读过的行到历史列表
-d #offset: 删除历史中指定的第offset个命令
command 查看当前的历史记录
!XX 执行某条历史记录
!!重复执行上一条历史
ctrl+r 搜索历史命令中的命令
Ctrl+g 从历史搜索模式中退出
要重新调用前一个命令中最后一个参数:
!$ (可在Shell下使用)
Esc,.(点击Esc键后,然后点击.键)
Alt+.(按住Alt键的同时点击.键)
调用历史参数
command !^ #利用上一个命令的第一个参数做cmd的参数
command !$ #利用上一个命令的最后一个参数做cmd的参数
command !* #利用上一个命令的全部参数做cmd的参数
command !:n #利用上一个命令的第n个参数做cmd的参数
bash的快捷键
Ctrl+l 清屏,相当于clear命令
Ctrl+s 阻止屏幕输出,锁定屏幕。
Ctrl+q 允许屏幕输出
Ctrl+c 终止命令
Ctrl+z 挂起命令
Ctrl+a 光标移到命令行首,相当于Home
Ctrl+e 光标移到命令行尾,相当于End
Ctrl+u 从光标处删除至命令行首
Ctrl+k 从光标处删除至命令行尾
Alt+f 光标向右移动一个单词尾
Alt+b 光标向左移动一个单词首