狭义
Linux操作系统就是一个Linux kernel(内核),内核负责管理硬件,并为上层应用提供接口.
广义
指以Linux kernel为基础的包括OS和各种应用在内的各个Linux版本.
各版本之间的差异体现在客户群,维护,界面等方面.因为Linux是开源的,所以各个公司会根据自己的需要编写Linux系统,所以会有很多不同版本的Linux.
Linux图解
内核–>库,库函数–>shell:就是一个人机接口–>应用程序.
小结
Linux只是一个内核,一个完整的操作系统不仅仅只有内核,许多个人,公司,组织和企业,开发了基于GNU/Linux的Linux发行版.
做测试之前需要部署很多环境,如:SIT(系统集成环境),UAT(用户验收环境),需要通过学习LINUX才知道如何部署,其他还有生产环境:PROD,开发环境:DEV
1.终端命令行与ls命令
终端命令行包含的内容
1.root:表示当前使用的用户名
2.@符号后的字符表示当前系统的名字
3."~"表示当前用户的属主目录(相当Windows系统的我的文档) 如果是管理员用户,~表示root 如果是其他用户,~表示home下的其他用户的属主目录,也就是说其他用户的属主目录是放在/home目录下的 比如现在我切换到其他用户yangdaxian,那么此时~就表示/home/yangdaxian
4."#“表示系统管理员身份,”$"表示普通用户登录.
用命令su root可以切换登录用户
ls命令
命令的格式
一般都是:命令 [-选项] 参数1 参数2
命令和参数,选项都是区分大小写的,注意Linux里是没有扩展名的.
[]表示可选
如果命令太长,可以加""在末尾然后按回车,继续输入.
命令的常用选项:
ls -a:表示列出当前目录下的所有文件和目录,包括隐藏文件和目录.
ls -A:表示列出当前目录下的所有文件和目录,不包括隐藏文件和目录.
ls -t:根据事件排序显示当前目录下的文件和目录,不显示隐藏的文件和目录,一般我们使用-t选项时会结合其他选项使用,如:ls -tl
ls -l:表示按详细信息的模式列出当前目录下的文件和目录,不包括隐藏的文件和目录
“ctrl”+“l"或者直接输入命令"clear”:清屏.
命令结果中各种颜色代表的含义
深蓝色—>目录(也就是文件夹,不过在Linux中都叫目录)
浅蓝色—>链接文件(快捷方式)
红色—>压缩文件
绿色—>可执行文件
灰色—>其他文件
ls -l命令结果格式
drwxrwxrwx:一共有10位.
1.第一位的"d",表示目录,还可以是"l",表示链接文件,还可以是"-"表示普通文件.
2.第2,3,4位:这三位表示管理员用户对文件的使用权限,"r"表示可读,"w"表示可写,“x"表示可执行,”-"表示没有相应权限.
3.第5,6,7位,这三位表示group组的权限,就是管理员分的组,规则同上.
4.第8,9,10位,这三位表示普通用户的权限,规则同上.
2.下载安装命令与查看提供命令的配置文件
查找提供ifcongfig命令的文件
yum provides ifconfig
可以看到ifconfig命令需要net-tools工具
下载工具.
yum install net-tools
3.Linux的根目录
Linux的根目录是用"/"表示,在根目录下有许多文件和目录,里面就包含了管理员的属目录(我的文档)root目录,以及普通用户的属目录所属的父目录home.
4.vi 编辑器
输入vi “你的文件名”,在当前目录新建一个文件,
再次输入vi “你刚才新建的文件” 可以进入你刚才创建的文件test2
三种模式
一般模式
阅读和游览,一般按"i"进入
编辑模式
命令行模式
输入":wq"保存退出
输入":q!"强制退出但不保存
小技巧: 1.在vi中连续按两下d可以删除当前行,按一下d+↑删除当前行的上一行,按d+↓删除当前行的下一行 2.使用/+你要搜索的字符或字符串,可以实现快速查找,按n选到下一个匹配的字符串
5.文件与目录操作命令
cat
查看一个文件的内容.
语法:cat [-option] 文件名
常用参数:
-n,将行号也显示出来,包括空行;
-b,将行号显示出来,不包括空行.
head
显示文件头部十行 语法:head 文件名
tail
显示文件尾部十行 语法:tail 文件名 tail还有另外一个用法:实时滚动查看日志信息 输入tail -f 日志文件,然后等待,当有人往日志输入信息时,屏幕会自动显示别人输入的日志信息
cd
切换目录
语法:cd 相对路径或绝对路径
pwd
查看当前目录绝对路径位置
mkdir
建立文件夹
语法:mkdir [-option] 目录名(可以是绝对路径或相对路径)
常用参数:
-p :当建立的目录的父目录不存在时,同时建立父目录,如:当前目录没有f1目录,使用命令mkdir -p f1/f2,会同时建立f1目录并且在f1下建立f2目录.
rmdir
删除目录,目标目录必须为空
语法:rmdir 目录名
cp
复制文件或目录
语法:cp [-option] 源 目标
常用参数:
-r,表示递归处理,复制指定的目录以及其中的所有文件和目录,说白了-r命令就是用来复制目录的.
rm
删除文件和目录
语法:rm [-option] 文件名
常用参数:
-f:force 直接删除文件,不提示用户是否确认.
-r:递归处理,删除目录,会提示用户确认.
-fr:直接删除目录及其中所有文件和目录,不提示用户是否确认.
mv
移动文件或目录(相当于剪切)
语法:mv 源 目标
mv常用在文件或目录的重命名,cp也可以重命名,但是会复制文件或目录.
touch
在当前目录下创建文件 语法:touch+文件名
tree
以树结构的方式查看当前目录下的所有目录和文件 语法:tree
6.其他常用命令
ifconfig
查看IP 语法:config 如果ens32此时未显示ip,那么可以使用ifup ens32命令(一般LINUX网络接口默认名为ens32)
man
查看命令的帮助文档 语法:man+命令名
history
查看历史记录(就是你之前输入过的所有命令,包括无效命令) 语法:history 使用!+序号,可以执行history中出现的命令
ctrl+u
清除当前行的所有命令
ctrl+c
退出或丢弃当前命令
7.打包压缩命令
打包
tar -cvf 打包后的文件名 要打包的文件或目录
(多个文件或目录以空格隔开) 注意:打包之后,源文件是不变的
打包并压缩
tar -czvf 目标文件(或目录)名 源文件(或目录)名
用法同 tar -cvf 只不过这里会将打包的文件或目录进行压缩
解包
tar -xvf 被打包的文件(或目录)名
注意: 这里解包之后的文件会放在你当前所在目录下
解压缩包
tar -xzvf 被压缩的包
用法同上,只不过这里加了-z选项,表示解压的是压缩过的文件或目录 zip和unzip也可以用来压缩和解压 压缩 zip xxx.zip 要被压缩的文件或目录名 解压 unzip xxx.zip
8.管道符 |
|需要在其前后连接2个命令,前一个命令的输出作为后一条命令的输入
命令 | less
将结果分屏显示(PgUp,PgDn可以进行屏幕级的滚动)
命令 | split
将结果分行显示
命令 | grep xxx
这里grep表示搜索的意思
9.Linux关机与重启
shutdown
shutdown -h 18:00,将在18:00关机
shutdown -h now,立即关机
shutdown -h 10,10分钟后关机
shutdown -r now,立即重启
shutdown -r 18:00,将在18:00重启
shutdown -c,取消计划
poweroff
直接输入命令poweroff即可立即关机,如果时智能电源,poweroff会切断电源供应.
reboot
立即重启.
10.自定义linux命令(简化系统命令)
alias
用法:
1.alias -p,查看当前所有使用了alias简化的命令:
2.alias ls,此时系统会显示ls原来的长命令:
3.自定义命令名:
alias mkd=‘mkdir’
4.删除定义的alias
unalias mkd 注意: alias创建的自定义命令是有时间限制的,每次重启之后会丢失, 想要永久保存,需要将alias命令添加到配置文件/etc/.bashrc或者~/.bashrc /etc/.bashrc是针对所有用户生效的, ~/.bashrc针对当前用户生效. 如果添加之后没有立即生效,可以切换用户再切回来或者重启
11.Linux用户管理命令
查看当前系统所有用户信息
cat /etc/passwd
再passwd文件中可以找到所有用户信息(第三个参数大于500的是后面添加的用户,小于500的就是系统自带用户)
新建用户
(需要管理员用户才可新建)
useradd [-m] 用户名
-m选项表示确保用户的属主目录一同创建 useradd -m yzz
激活用户
passwd 用户名
(也就是给新用户设置密码) passwd yzz
查看用户属性
id 用户名
id yzz
更改目录或文件的用户权限
u表示管理员用户,g表示组中的用户,o表示其他用户 r表示可读权限,w表示可写权限,x表示可执行权限 两种写法:
chmod u+x 目录或文件名
表示给管理员用户添加该目录或文件的可执行权限(-表示删除相应权限)
chmod 777 目录名或文件名
表示给所有用户添加该目录或文件的可读可写可执行权限 这里的777都是10进制数,每一个7都可转换为二进制的111,每一个7对应一个用户,第一个7表示u用户,第二个7表示g用户,第三个7表示o用户,111对应读写执行权限(这里0表示没有相应权限,1表示有) 可选项-R表示对目录下的所有文件和目录更改权限 chmod -R u+w 目录名
用户分组
新建分组
groupadd 组名
给用户添加组
usermod -g(-G) 组名 用户名
-g表示给用户添加的组是主组,注意使用-g后,会覆盖用户原来的组 -G表示给用户添加的组是附属组
给用户添加多个组
usermod -aG 组名1 组名2 … 用户名
(G表示添加的是附属组)
12.Linux网络管理命令
发包命令
ping URL(IP) [-c 3]
-c 3表示只Ping3个包就结束
查看端口占用情况
(端口号就是一个IP中用来区分不用应用的)
显示网络详细信息
netstat -ano
在网络详细信息中搜索字符串"128"
netstat -ano | grep "128"
只查看当前系统启用的端口信息
netstat -lnp
13.Linux进程相关命令
查看进程信息
ps -ef [| less]
(PPID表示父进程,CMD表示当前进程) | less表示分屏显示(PgUp,PgDn可以进行屏幕级的滚动)
查看进程细节
top
注意:使用PgUp,PgDn翻屏查看信息
查看内存使用情况
free -h
查看磁盘使用情况
df -h
14.Linux与Windows互传文件
首先下载包lrzsz
yum install -y lrzsz
这里-y表示执行命令过程中都选yes
从Linux向Windwos传文件(目录)
sz 文件名(或目录名)
当输入命令sz 某文件名 时,会自动弹出要将文件保存到Windows中的哪个路径的界面