linux

本文介绍了Linux操作系统的基础知识,包括其开源特性、强大的命令行操作和模块化设计。重点讲解了Linux系统的文件类型、权限、目录链接个数、文件大小、修改日期等基本概念,以及如何使用mkdir、cat、find、yum等常见指令。此外,还涉及用户管理、文件压缩打包、日志查看等实用技巧。
摘要由CSDN通过智能技术生成

 linux系统

一句话理解linux系统:和windows一样,都是一种计算机操作系统。

为什么windows系统看起来更友好,但是企业中不用windows系统而选择linux呢?

总结为三点:

1.linux系统也是代码开发出来的,是开源的,源码可见,用户也可以去修改

2.linux提供简单强大的命令行操作

3.linux是一个模块化的操作系统,可以轻松添加或移除组件

Linux的发行版本有很多,但是最权威的发行发行公司属 red hat,红帽公司发行的版本主要有:

Rhel红帽企业版:专门为企业提供稳定,商业支持的发行版本

文件类型

执行之后显示了很多内容,但是这些内容都代表什么意思呢?

文件类型

“-”表示普通文件;

“d”表示目录;

“l”表示链接文件;

“p”表示管理文件;

“b”表示块设备文件;

“c”表示字符设备文件;

“s”表示套接字文件;

目录/链接个数

对于目录文件,表示它的第一级子目录的个数。注意此处看到的值要减2才等于该目录下的子目录的实际个数。

Include其实是没有子目录的,所以应该是0,但是它这里却显示2,这是因为要加上.目录和..目录。在linux下,

.目录表示当前目录

..目录表示上一级目录

文件属性

以back_init文件为例,其属性可分为三段:[rwx][rwx][r-x],其中:

第一段表示文件创建者/所有者对该文件所具有的权限,

第二段表示创建者/所有者所在的组的其他用户所具有的权限,

第三段表示其他组的其他用户所具有的权限。

r(Read,读取权限):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。

w(Write,写入权限):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。

x(execute,执行权限):对文件而言,具有执行文件的权限;对目录来说,该用户具有进入目录的权限。

所有者及组


表示该文件的所有者/创建者(owner)及其所在的组(group)。

文件大小

如果是文件,则表示该文件的大小,单位为字节。
如果是目录,则表示该目录符所占的大小,并不表示该目录下所有文件的大小。

b:字位(存储器的最小单位 bit) B:字节(Byte)

1汉字=2B

1B=8b
1KB=1024B
1MB=1024KB
1GB=1024MB

修改日期


该文件最后修改的日期时间。

文件名称


文件名,无需多说

字体颜色

在大多数的linux shell窗口中,还能用颜色来区分不同文件的属性:

灰白色表示普通文件;

亮绿色表示可执行文件;

亮红色表示压缩文件;

灰蓝色表示目录;

亮蓝色表示链接文件;

亮黄色表示设备文件;

一.执行指令

清屏 :clear

跳转目录 :cd 目录名 或 cd /目录/目录 路径区分相对路径和绝对路径

注意1:路径有相对路径和绝对路径

你处在你所在的目录A中时,你可以直接cd+A目录下的目录名a进入A目录的下级目录,那cd a , a就是相对路径

如果你此时正处在A目录中,你想进入根目录下的B目录中的b目录中的b1目录时 你就需要cd /B/b/b1,那么/B/b/b1就是b1目录的绝对路径注意2:cd是指令,目录名是指令的操作对象,二者之间要有空格。其他指令亦是如此。

返回上一级:cd ..

返回上两级:cd ../..

查看所有目录和文件:ll

查看当前所处绝对路径:pwd

创建目录:mkdir 目录名

创建平行目录:mkdir 目录名1 2 3

创建联级目录路:mkdir -p 目录1/2/3

新建文件:touch aa.txt

编辑文件:vi/vim aa.txt(当文件不存在时编辑结束立即创建名为aa文件)

编辑文件具体操作:按i进入编辑 开始 按esc 和:结束编辑这时输入wq(保存)或wq!(强制保存)或q!(不保存并退出)

查看文件:cat 文件名(文件全部内容)

:less 文件名(上下左右翻页查看)

:more 文件名(按百分比查看)

查看(按行数):head 文件(默认查看前10行)

:tail 文件 (默认查看后10行)

:head -n 数字 文件(产看前规定数字行数)

:tail -n 数字 文件 (查看后规定数字行数)

:tail -n +数字 文件 (查看从数字行数起到最后一行)

查找文件:find

find /目录/ "*.txt"查找目录下的所有.txt文件

find /目录/ -name aa.* 查找目录下名为aa的所有文件

忘记文件在哪find /* -name aa.txt

删除:rm -rf 文件或目录

复制:cp aa.txt a/cc.txt(把aa文件复制到a目录(考虑路径的绝对性)中给名为cc)

: cp -r /a/b /a/c(把a下的b目录复制到a下c目录中)

移动(剪切):mv a.txt ../(移动到上级目录)

:mv a.txt /目录/目录(绝对路径)把文件移到指定目录

:mv aa bb 档aa存在时把aa移到bb目中

:mv a.txt a/bb.txt 吧a.txt移动到a目录中 改名为bb

yum工具:检查是否安装 rpm -qa | grep yum

安装lrzsz工具:yum install lrzsz

lrzsz工具实现linux系统和windows系统之间交互

rz 是 windows系统上传到linux系统

sz 文件名 是从linux系统中下载文件到Windows系统中

新建用户

useradd 新用户名 -d/home/新用户名 -p 密码

cat /etc/passwd 查找所有用户

cat /etc/shadow 查看密码

然后在root用户下执行passwd (a1新用户名) 改密码 即可完成创建新用户

切换用户:su 用户名(a1)root到普通用户不要密码

普通用户到root 要密码

删除用户 :userdel -r 用户名(要重启一次xshell7 因为删除用户会结束进程 在操作一次删除命令 即可完成用户删除)

更改权限

chmod 777 aa.txt 给所有用户所有权限

chmod -R 777 aa 赋予所有用户aa目录下的全部目录和文件所有权限

chmod u/g/o-/+r/w/x aa.txt 针对文件aa进行用户权限(读/修改/执行)增减

chown a aa.txt 文件属主(属有人)修改

chown root.root aa.txt文件属主和属组修改

chgrp bb aa.txt 文件所在组修改

创建新组:groupadd 组名

cat /etc/group 查看一共多少组

groups 用户名 查看该用户所在组及成员

gruopdel 组名 删除组

useradd 新用户名 -g 组名 新建用户到指定组中

文件和目录压缩打包及解压

tar包

文件: tar -cvf a.tar a.txt(a文件压缩为tar格式)

tar -xvf a.tar(解压)

目录:tar -cvf bb.tar bb(目录压缩tar格式)

tar -xvf bb.tar(解压)

tar.gz包

文件:tar -zcvf a.tar.gz a.txt(a文件压缩为tar.gz格式)

tar -zxvf a.tar.gz (解压)

目录:tar -zcvf bb.tar.gz bb(目录压缩)
tar -zxvf bb.tar.gz (解压)

zip包

文件:zip a.zip a.txt

unzip a.zip

目录:zip -r bb.zip bb

unzip bb.zip

gzip打包(只能打包文件、不能打包目录)

gzip aa.txt ==》打包命令:打包文件后,源文件消失,只剩下包名

gunzip aa.txt.gz ==》解压命令:解压之后包名消失,出现源文件

打包和压缩

Windows的压缩文件的扩展名 .zip/.rar

linux中的打包文件:aa.tar

linux中的压缩文件:bb.gz

linux中打包并压缩的文件:.tar.gz

Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。

命令:tar -zcvf 打包压缩后的文件名 要打包的文件,其中:z:调用gzip压缩命令进行压缩

c:打包文件

v:显示运行过程

f:指定文件名

示例:打包并压缩/usr/tmp 下的所有文件 压缩后的压缩包指定名称为xxx.tar

tar -zcvf ab.tar aa.txt bb.txt

或:tar -zcvf ab.tar *

解压

命令:tar [-zxvf] 压缩文件

其中:x:代表解压

示例:将/usr/tmp 下的ab.tar解压到当前目录下

tar -zxvf ab.tar

示例:将/usr/tmp 下的ab.tar解压到根目录/usr下

tar -zxvf ab.tar -C /usr------C代表指定解压的位置

多有米项目搭建后用到的特别重要的指令(必需背下来)

实时查看动态日志 tail -f 日志名

根据关键字查看日志 cat Catalina.log | grep 关键字

根据日志刷新时间查看日志 sed -n '/开始时间/,/结束时间/p' [日志文件名] 例如:

sed -n '/2019-10-24 22:16:21/,/2019-10-21 20:16:58/p' all.log | grep 关键字

sed遇到的坑

精确查找的话,开始时间和结束时间必须要是日志里面有的,要是没有的时间,那查找就没有结果

如果开始时间日志里面是没有的,那么查询结果为空

如果结束时间日志里面是没有的,查询的结果就是开始时间到最后的全部日志

可以用模糊查询,比如查询时间段2019-10-24 22:14 到 2019-10-24 22:16

sed -n '/2019-10-24 22:14:*/,/2019-10-24 22:16:*/p' all.log

通过进程名或者进程号查看进程

ps -ef | grep 进程名/进程号

netstat -pan | grep 8080(端口号) 查看端口号被什么进程占用了

Kill -9 进程号 可以通过该指令杀掉占用了我端口号的进程

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值