目录
一、Linux终端介绍Shell提示符 Bash Shell基本语法
一、Linux终端介绍Shell提示符 Bash Shell基本语法
(一)登录LINUX终端
1.两种终端仿真器
1.1、GNOME桌面的GNOME Terminal
1.2、KDE桌面的Konsole Terminal
远程连接终端工具:Xshell,CRT。
2.查看当前所属终端
通过tty命令查看当前所属的虚拟终端
dev下的pts/0,这就是一个终端
点击文件或者shift+ctrl+N,再打开一个终端
输入tty看到另一个终端
可以实现终端之间的通信
注释:
快速打开一个终端 :shift+ctrl+N
终端字体放大:shift+ctrl+加号
终端字体缩小:ctrl+减号
3.终端之间的通信
不同虚拟终端之间通讯 echo:输出
3.1、同时打开两个终端,第一个终端执行
3.2、在另一个终端上就会显示我们输出的内容
4.对所有终端广播消息
系统制定时间后关机
shutdown - h 或者 shutdown + 指定时间 执行此命令后,在其它终端都会看到此命令
shutdown - c #取消关机
通过 wall命令 自己广播
输入wall “nbcls”就可以广播到其它终端
(二)认识shell
Shell是Unix和类Unix操作系统中的一个程序,它为用户提供了与内核交互的接口。作为命令行解释器,Shell接收用户的输入并解析成相应的系统调用,执行相应的操作。此外,Shell还提供了一些高级功能,如管道、重定向、文件名代换等。
1.shell的类型
不同的Unix和类Unix系统可能使用不同的Shell,常见的有:Bash(Bourne Again Shell)、sh(Bourne Shell)、csh(C Shell)、tcsh(增强型C Shell)等。
Bash是最常用的一种Shell,也是大多数Linux发行版的默认Shell。
2.内部命令和外部命令
内部命令:在系统启动时就调入内存,是常驻内存的,所以执行效率高
外部命令:是系统软件的功能,用户需要时才从硬盘中读入内存
3.如何区分内外部命令?
使用type命令, 语法: type 要检测的命令
3.SHELL的作用
通过SHELL,我们可以对Linux实现哪些操作或者管理
对文件的管理(创建、删除、复制、修改)
对用户的管理(添加、删除)
相关权限的管理(授权用户相关文件的管理,比如增删改查)
对磁盘的管理(分区、raid、lvm)
对软件的管理
对网络的管理
(三)shell提示符#和$的区别
#表示root用户登录
su - 用户名 切换到普通用户
$表示的是普通用户
上面各位置对应的内容代表如下
(四)认识BASH、SHELL
1.查看当前系统支持哪种
shell:cat /etc/shells
2.怎么查看使用哪种类型
具体使用的是哪一个,取决与你的用户配置,可以在在PASSWD 里查看最后一个字段
输入head - 1 /etc/passwd,查看第一行,使用的shell类型就是bash
输入vim /etc/passwd打开它
我们可以看到各种配置的各种shell
比如第二行bin用的使用的nologin,表示不允许登录
二、基本命令的使用:ls、pwd、cd、history
在Linux中使用一个命令,命令格式如下
命令 【选项】 【参数】
命令:具体执行的命令,比如 pwd,head
选项:会影响到命令的一些行为操作,通常以- --实现
参数:命令作用的对象
(一)基本命令之---ls、别名的使用方法
作用:查看当前目录下有哪些文件(list)
语法:ls 目录/文件 ,如果什么也不加,那么就是查看当前目录下的内容
常用选项:
1.命令后面不加任何选项
默认查看当前目录下的文件
2. -l
列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等,长列表
上面文件各段所代表的含义
在Linux中有一个常识叫一切皆文件
第一个字符文件类型中:
d:目录文件
l:链接文件
b:设备文件
c:字符设备文件
p:管道文件
-:表示普通文件
在上图中我们可以看到,文件名称蓝色的,那么我们输入ls -l /dev,可以看到,文件的颜色由好多种
Linux中不同颜色,代表了不同文件类型
3.-a
列出目录下所有的文件,包括以“.”开头的隐藏文件(Linux下隐藏文件是以.开头的,如果存在两个点,代表着存在父目录,一个点表示当前目录)
ls .代表当前目录
ls .. 代表上层目录
ls /查看根目录
我们当前root目录,ls .和 ls /root查看的内容是一样的,ls ..查看的是上层目录,root目录的上层目录就是根目录
4.-d
查看目录(不看里面内容)
5.-S(大写)
以文件的大小排序
6.别名的使用
ls -l 和ll 这两个命令是等价的
使用type ll查看
6.1编辑别名
怎么起别名呢,用alias
比如我们在编辑网卡配置文件的时候要输入alias vimens33="vim /etc/sysconfig/network-scripts/ifcfg-ens33"
这么长的名,那么我们就可以通过alias 来编辑别名
编辑alias vimens33="vim /etc/sysconfig/network-scripts/ifcfg-ens33"回车之后就直接生效了
6.2删除别名
unalias +别名
重启后的话也会自动消失
注释:编辑别名的时候分当前用户和所有用户
6.3永久保存
永久使用的话需要记录到内存里
输入 vim /root/.bashrc 这里就是定义了的别名
在这里编辑
输入source /root/.bashrc 把文件重新加载一下 之前打开的其它终端需要重新加载一下,新打开的终端则不需要
6.4全部用户
前面我们在编辑别名时,只有root用户可以使用,想要让普通用户也可以使用的话我们需要在etc下,有一个总的bashrc文件,在这里进行编辑
输入: vim /etc/bashrc
使用光标移动到最下方,加入alias vimenss33="vim /etc/sysconfig/network- scripts/ifcfq- ens33”,保存退出
我们切换回普通用户,输入别名
(二)基本命令之----cd
作用:切换目录(change directory)
语法:cd 目录
说明:直接输入cd或者cd ~表示回到当前用户的宿主(家)目录
1.cd ..
表示返回到上级目录位置,也就是父目录
cd . :表示进入到当前用户所在的目录
2.cd -
表示切换到之前目录
(三)基本命令之-----pwd
打印当前文件目录
输入pwd显示当前目录
pwd -L:表示打印逻辑路径
pwd -P:表示打印物理路径
(四)历史命令之-----histor
命令:history 查看历史命令
4个快速查找Linux历史命令的技巧
方法1:光标上下键
方法2: ctrl+r //搜索历史命令(输入一段某条命令的关键字)
按下ctrl+r键后,进入到reverse- i-search 模式输入你之前输入命令的其中一个字段,例如sys 就会自动在历史记录中调出匹配的命令,而后按下左右标键即可
方法3: !数字 //执行历史命中第 N 条命令
首先输入history 查看历史命令
比如我们想执行弟458条命令,在这里输入 !458即可
方法4:!字符串//搜索历史命今中最近一个以xxxx字符开头的命令
比如vim开头的最近一条命令是vimens33,那么我们输入!vim,就会自动匹配这一条
注释:事实上,我们一般只需要学习前两条就足够我们在平时工作中使用了,如果你不够熟悉的话,后两条可能会执行错误命令,得不偿失。
(五)Linux下快捷键
都是ctrl+下面的单词,^表示ctrl
1.^C
终止前台运行的程序,比如:ping+网址后,想停止按下ctrl+C
2.^D
退出 等价exit
3.^L
清屏,与clear功能一样
4.^A
跳到命令行的开头
5.^E
跳到命令行的末尾
6.^R
搜索历史命令,可以利用好关键词(这个在上面演示过的)
7.!$
引用上一个命令的最后一个参数
比如我们查看一个文件后,想对它进行编辑,我们就可以输入vim!$就可以了,它就相当于执行了vim /etc/hosts 这个命令
8.Tob键
使用Tob键补全,只能补全命令和文件,有且只有一个相关命令时会自动不全,有多个命令时会列出所有相关命令。