Linux学习

第一章

操作系统:调度和管理计算机硬件进行工作

Linux系统:系统级应用程序+Linux系统内核

Linux发行版:人们获得并修改内核,并且自行集成系统级程序

主要基于CentOS操作系统,辅助Ubuntu系统

VMware:虚拟机

FinalShell:协助window系统和Linux连接

第二章

1.Linux目录结构

Linux没有盘符概念,只有一个根目录/,所有文件都在它下面(只有一棵树)

路径之间层级关系:Linux系统/       Window系统\

/usr/local/hello.txt   开头/表根目录,后面/表层级关系

2.Linux命令基础

command [-options] [paramater]

command:命令本身

-options:(选填)命令的一些选项

parameter:(选填)命令的参数

3.ls命令

列出当前目录下的内容(默认HOME目录)

ls [-a -l -h] [Linux路径]

HOME目录:用户在Linux系统的专属目录,默认在:/home/用户名

查看根目录下面的内容

ls /

-a:all的意思,列出全部文件(包含隐藏的文件)

linux系统中前面带.的为隐藏文件

-l:以列表(竖向排列)的形式展示内容,并展示更多信息

选项可以组合使用:ls -l -a       ls -la         ls-al

-h:以易于阅读的形式,列出文件大小,如K、M、G

4.cd命令

更改当前所在的工作目录

cd [Linux路径]    要切换到哪个目录下

不写参数会回到用户的HOME目录

5.pwd命令

查看当前所在的工作目录

6.路径

绝对路径:根目录为起点,以/开头

相对路径:以当前目录为起点,无需以/开头

特殊路径符:

.     当前目录

..    上一级目录

~    HOME目录

7.mkdir命令

创建新的目录(文件夹)

mkdir [-p] Linux路径

-p选填,表示自动创建不存在的父目录(一次创建多个层架目录,将一整条链表都创建完成)

清屏:clear

8.touch-cat-more-命令

touch:创建文件

touch Linux路径(必填)

ls -l   (d开头为文件夹,-是一个文件)

cat:查看文件的内容

cat Linux路径(必填)

more:查看文件内容

more Linux路径(必填)

cat是直接将内容全部显示出来,more支持翻页如果文件内容过多可以一页页展示

more进文件查看:空格翻页,q退出查看

9.cp-mv-rm-命令

cp:复制文件或文件夹

cp [-r](可选) 参数1  参数2 

-r:复制文件夹使用,表示递归

mv:移动文件或文件夹

参数1:Linux路径,表示被复制的文件或文件夹

参数2:Linux路径,表示复制要去的地方

如果目标不存在,要改名(将参数1改为参数2的名字存在)

rm:删除文件或文件夹

rm [-r -f] 参数1 参数2 ..... 参数n

-r:删除文件夹

-f:强制删除(普通用户删除内容不会弹出提示,只有root管理员用户删除内容有提示)

rm支持通配符*,用来模糊搜索

超级管理员

10.which-find命令

Linux命令,本体为一个个的二进制可执行程序

which 要查找的命令             查看所使用的一系列命令的程序文件存放在哪里

find  

以文件名查找文件    find 起始路径  -name "被查找文件名"

起始路径:表明从哪个盘开始搜索

以文件大小查找文件     find 起始路径 -size +或-n[kMG]

+或-表大于小于

n表大小数字

k为kb,M为MB,G为GB

11.grep-wc-管道符

grep [-n] 关键字 文件路径

找出关键字都在哪些行

-n:可在结果中显示匹配的行的行号

关键字:如果有空格或者其他特殊符号,要用""将关键字包围起来

文件路径:可作为内容输入端口

wc [-c -m -l -w] 文件路径

统计文件的行数、单词数量

-c:bytes数量

-m:字符数量

-l:行数

-w:单词数量

管道符  |

将管道符左边命令的结果,作为右边命令的输入

12.echo-tail-重定向符

echo 输出的内容

用echo命令在命令行内输出指定内容

复杂内容可用" "包围

反引号  `(esc下面的键)

``包围的内容,会被作为命令执行,而不是普通字符被直接输出

重定向符:>和>>

>   将左侧命令的结果,覆盖写入到符号右侧指定的文件中

>> 将左侧命令的结果,追加写入到符号右侧指定的文件中

tail [-f -num] Linux路径

查看文件尾部内容,跟踪文件的最新修改

-f:持续跟踪     将CentOS系统复制一个,再复制的那个里面输入,原来的会持续跟踪显示

-num:查看尾部多少行,不填默认10行   直接写数字   -5这种

13.vi编辑器

文本编辑器

 vim为vi的升级版,更方便,用哪个都行

命令模式

vim 文件路径   编辑文件

用vim打开文件然后上下键调光标,按i进入输入模式

快捷键用的时候去查

第三章

1.root用户

超级管理员

普通用户一般在其HOME目录内不受限,HOME外无修改权限

su - [用户名]          exit

sudo命令:可以让一条普通命令带有root权限,语法:sudo 其他命令(为了安全)

需要用root为普通用户配置sudo认证

2.用户和用户组

用户组管理

需要用root用户执行

创建:groupadd 用户组名             删除:groupdel 用户组名

用户管理

需要用root用户执行

创建:useradd [-g -d] 用户名

        -g:规定用户组,不指定-g会创建同名组并自动加入,指定-g需要组已经存在,如果已经有同名组,必须使用-g

        -d:规定用户HOME路径,默认在/home/用户名

删除:userdel [-r] 用户名

         -r:删除用用户的HOME目录

查看用户所属组:id [用户名]   无则查看自身

修改用户所属组:usermod -aG 用户组 用户名       

getent 查看

getent passwd    查看用户

得出7份信息:用户名:密码(x):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)

getent group   查看用户组

得出3份信息:组名称:组认证(显示为x):组ID

3.查看权限控制

1.文件权限控制信息

2.文件所属用户

3.文件所属用户组

认知权限信息

 -表无此权限

r读     查看文件,文件夹内容

w写   修改文件,创建、删除、改名文件夹

x执行  将文件作为程序执行,可以更改工作目录到此文件夹(即cd进入)

4.修改权限控制

修改1

只有文件、文件夹所属用户和root用户可以修改

chmod [-R] 权限 文件或文件夹

-R:对文件夹内的全部内容应用同样的操作

chmod u=rwx,g=rx,o=x hello.txt  ->rwxr-x--x

u:user   g:group   o:other

权限的数字序号:r为4,w为2,x为1    二进制转化

751表示rwx(7) r-x(5) --x(1)

修改2 3

只适用于root用户执行

chown [-R] [用户] [:] [用户组] 文件或文件夹

-R:对文件夹内全部内容应用相同规则

: 用于分隔用户和用户组

只修改组前面要加:分隔来表示是组

第四章

1.各类快捷键

ctrl+c 强制停止

crtl+d 退出(不能用于退出vi/vim)

history 查看历史输入过的命令

!命令前缀   自动执行上一次匹配前缀的操作

ctrl+r  输入内容去匹配历史的命令

ctrl+a 光标跳到命令开头

ctrl+e 光标跳到命令结尾

ctrl+键盘左键    向左跳一个单词

ctrl+键盘右键    向右跳一个单词

ctrl+l   清屏

2.软件安装

rpm文件 ->Linux系统软件安装包格式

yum:RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题

yum需要root权限,需要连网

yum [-y] [install/remove/search] 软件名称

-y:自动确认,无需手动确认安装或卸载过程

install:安装  remove:卸载  search:搜索

3.systemctl命令

systemctl命令控制Linux系统已经集成的软件

能被systemctl管理的软件->服务

systemctl start(启动) | stop(关闭) | status(查看状态) | enable(开启开机自启) | disable(关闭开机自启) 服务名

4.软链接

将文件、文件夹链接到其它地方,类似Windows系统中的快捷方式

ln -s 参数1 参数2

-s:创建软链接

1:被链接的文件或文件夹

2:要链接去的目的地

5.日期和时区

date [-d] [+格式化字符串]

%Y 年    %y  年份后两位数字    %M  月份     %d  日     %H  小时      %M  分钟     %S  秒    %s  时间戳

这俩连用

-d:按照给定的字符串显示日期

格式化字符串:"+1 day"

6.IP地址、主机名

IP   对外联网地址

查看本机IP   ifconfig

ens33 -> 主网卡

127.0.0.1 此IP指代本机

0.0.0.0 特殊IP地址:1.用于指代本机  2.在端口绑定种用来确定绑定关系 3.在一些IP地址限制种,表示所有IP的意思,如放行规则设置为0.0.0.0,表示允许任意IP访问

主机名 

hostname   查看主机名

hostnamectl set-hostname 主机名      修改主机名(需root)

域名解析

7.虚拟机配置固定IP

1.在WMware Workstation中配置IP地址网关和网段

2.在Linux系统中手动修改配置文件,固定IP

8.网络请求和下载

ping

检查指定网络服务器是否是可联通状态

ping [-c num] ip或主机名

-c:检查的次数,不使用-c选项,将无限次数持续检查

wget

文件下载器,可在命令行内下载网络文件

wget [-b] url

-b:后台下载,会将日志写入到当前工作目录的wget-log文件

url:下载链接

curl

可以发送http网络请求,可用于:下载文件,获取信息等

curl [-O] url

-O:用于下载文件

curl cip.cc 可以获取主机的公网IP地址

9.端口

设备与外界通讯交流的出入口,端口有:物理端口和虚拟端口

物理端口:接口,USB接口

虚拟端口:计算机内部的端口,用来操作系统与外部进行交互使用的

计算机程序之间的通讯,IP地址只能锁定计算机,端口可以锁定具体的程序

Linux系统可以支持65535个端口:

公认端口:1~1023,用于一些系统内置或知名程序预留使用,如SSH服务22端口,HTTPS服务的443端口,尽量不要占用这个范围的接口

注册端口:1024~49151,可以随意使用,用于松散的绑定一些程序

动态端口:49152~65535,程序对外进行网络链接时,用于临时使用

nmap

查看IP地址下哪些端口的占用情况

nmap 被查看的IP地址

安装nmap:yum -y install nmap

netstat

查看指定端口的占用情况

netstat -anp | grep 端口号    

安装netstat:yum -y install net-tools

10.进程管理

每一个程序在运行的时候,会被操作系统注册为系统中的一个进程,并为每个进程分配独有的进程号

ps

查看Linux系统中的进程信息

ps -ef     列出全部进程的全部信息

UID:进程所属的用户ID

PID:进程的进程号ID

PPID:进程的父ID(启动此进程的其它进程)

C:此进程的CPU占用率(百分比)

STIME:进程的启动时间

TTY:启动此进程的终端序号,如显示?,表示非终端启动

TIME:进程占用CPU的时间

CMD:进程对应的名称或启动路径或启动命令

 kill

关闭进程

kill [-9] 进程ID

-9:表示强制关闭,不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制

11.主机状态监控

top

查看CPU、内存使用情况,类似Windows的任务管理器

默认5s刷新一次,按q或ctrl+c退出

top内容

 

 

df

参看硬盘使用情况

df [-h]

-h:人性化的单位显示

sar

查看网络的相关统计

sar -n DEV num1 num2

-n:查看网络,DEV表示查看网络接口

num1:刷新间隔(不填就查看一次结束)     num2:查看次数(不填无限次数)

12.环境变量

操作系统运行时,记录的一些关键性信息,用以辅助系统运行

env命令即可查看当前系统中记录的环境变量

$  取变量的值

echo $PATH   取得PATH这个环境变量的值并输出

echo ${PATH}ABC    输出PATH这个环境变量的值并拼接字符串ABC

自行设置环境变量

临时设置:export 变量名=变量值

永久生效:对当前用户生效,配置在当前用户的~/.bashrc文件中

                  对所有用户生效,配置在系统的/etc/profile文件中

                  生效:source 配置文件进行立刻生效,或重新登录FinalShell生效

环境变量PATH记录了系统执行命令的搜索路径

修改PATH:export PATH=$PATH:/root/myenv  (原有的加上自己后添的)

13.文件的上传和下载

通过FinalShell

下载

 上传直接往里面一拖就行

rz、sz命令

需用yum -y install lrzsz安装

发送到window  sz 文件名

接收  rz    然后会出现图形化选就行了

14.压缩和解压

Windows常用:zip 7zip rar

Linux常用:zip tar gzip

MacOS常用:zip tar gzip

.tar 称之为tarball,归档文件 简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装

.gz  常见为.tar.gz,gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大减少压缩后的体积

tar命令压缩文件

tar [-c -v -x -f -z -C] 参数1 参数2 ... 参数N

-c:创建压缩文件,用于压缩模式(类似于打下包)

-v:显示压缩、解压过程,用于查看进度

-x:解压模式

-f:要创建的文件或要解压的文件,-f必须在所有选项中位置处于最后一个

-z:gzip模式,不使用-z就是普通的tarball格式,使用的话就放在选项位第一个

-C:选择解压的目的地,用于解压模式,单独使用与解压所需其它参数分开

常见的压缩文件组合:

tar -cvf test.tar 1.txt 2.txt 3.txt      将1.txt 2.txt 3.txt 压缩到test.tar文件内

tar -zcvf test.tar.gz 1.txt 2.txt 3.txt   将1.txt 2.txt 3.txt压缩到test.tar.gz文件内,使用gzip模式

解压文件组合:

tar -xvf test.tar 解压test.tar    将文件解压至当前目录

tar -xvf test.tar -C /home/liuben    解压test.tar,将文件解压至指定目录(/home/liuben)

tar -zxvf test.tar.gz -C /home/liuben   以Gzip模式解压test.tar.gz,将文件解压至指定目录(/home/liuben)   


zip命令压缩文件

压缩文件为zip压缩包

zip -r 参数1 参数2 ... 参数N

-r:被压缩包含文件夹时

示例:zip test.zip a.txt b.txt c.txt

解压zip压缩包

unzip [-d] 参数

-d:指定要解压去的位置,同tar的-C选项

参数:位置

示例:unzip test.zip -d /home/liuben

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值