2021-07-30

linux基础

1、计算机的组成

计算机是由硬件系统和软件系统组成

硬件

运算器,控制器,存储器,输入设备,输出设备

软件

系统软件

linux  , unix , windows,mac  安卓  iOS

应用软件

QQ  微信  有道词典。。。。。。

2、linux介绍

linux  创始人:林纳斯 托瓦兹

linux  吉祥物:企鹅

常用的linux发行版:

ubuntu:linux 发行版中桌面操作系统做的最好的

centos:类似于redhat的免费版本

redhat:最大的linux发行厂商

deepin:国内做的最好的linux发行版

3、linux的目录结构

linux没有盘符的概念,所有的文件,都是从根目录开始的,按照层级依次查找,直到找到文件为止

常用的目录:

bin:储存二进制文件和常用的可执行文件

ect:储存linux中的配置文件,一般我们会修改其中的相关配置,完成服务或者环境的搭建

home:普通用户的家目录,一般用户产生的文件会默认存放在家目录中

root:超级管理员的家目录,一般超级管理员产生的文件会默认存放在root目录中

超级管理员拥有一切权限,甚至可以将所有的系统文件删除

sbin:存储的是超级管理员使用的二进制文件和可执行文件,一般用于系统管理

1、ls命令

ls  查看当前工作目录中的文件结构,显示所有文件的文件名

-a :显示所有文件的文件名,包括隐藏文件

-l:以列表的形式展示文件,包含多列文件信息

-h:更加人性化的展示文件大小,配合-l进行使用(单独使用没有效果)

# 查看文件目录

ls

# 查看文件目录,包括隐藏文件

ls-a

# 查看文件目录,以列表形式展示文件信息

ls-l

等价于:ll

# 查看文件目录,以列表形式展示,并且人性化展示文件大小

ls-hl

# 查看文件目录,以列表形式展示,并且人性化展示文件大小,显示所有文件,包括隐藏文件

ls-ahl

ll-ah

2、cd命令

绝对路径:从根目录开始,按照层级查找,直到找到该文件为止

相对路径:从当前工作目录开始查找,知道找到该文件为止

.:当前目录(./可以被省略)

..:上一级目录

cd 命令就是切换工作目录使用的,工作目录切换后,我们默认使用linux操作的就是当前工作目录的内容

cd 路径 (cd到的路径,必须是一个目录,并且,该目录必须存在)

# 切换共做目录为root目录

cd/root

# 使用绝对路径切换到bbb目录下的kettle目录

cd/root/bbb/kettle

# 使用相对路径切换到bbb目录下的kettle目录

cd./bbb/kettle# ./可以省略

# 切换到上一级目录

cd..

# 切换到上两级目录

cd../..

# 切换到上一次操作的工作目录

cd-

# 切换到家目录

cd~

cd

# 切换到根目录

cd/

3、mkdir命令

mkdir用于创建空目录

格式: mkdir 【-p】 目录名称

# 创建单个单层级目录

mkdiraaa

# 创建单个多层级目录(-p可以写在目录名称之前,也可以写在目录名称之后)

mkdir-pbbb/ccc/ddd

# 创建多个单层级目录

mkdirccc ddd

# 创建多个多层级目录

mkdir-peee/fff/eee  fff/eee/fff

4、touch命令

touch 一般情况下是用来创建新文件的

不能创建文件夹

touch创建的文件可以是任意扩展名

格式:touch  文件名称/文件路径

# 创建一个txt文件

toucha.txt

# 创建一个。java文件

tocuh a.java

# 在bbb目录下创建一个a.txt文件

touch./bbb/a.txt

# touch也可以同时创建多个文件

touch文件路径1  文件路径2 。。。

5、rm命令

rm删除指定文件或文件夹

rm 【选项】 要删除文件的路径

-f 强行删除,不进行提示

-r 递归删除,可以删除文件夹

# 删除a.txt文件

rma.txt

# 删除a.java文件,不进行提示

rm-fa.java

# 删除aaa文件夹

rm-raaa

# 删除bbb文件夹,不进行提示

rm-rfbbb

6、mv命令

mv命令用来移动或者重命名文件

格式:mv  源文件路径  目标文件路径

如果要移动到的路径不存在则,重命名

如果要移动到的路径存在则移动

# 移动a.txt文件到bbb目录中

mva.txt bbb# 此时bbb目录已存在

# 将b.txt进行重命名为c.txt

mvb.txt c.txt

# 将aaa目录,移动到bbb目录下

mvaaa bbb# 此时bbb目录已存在

# 将aaa目录改名为bbb目录

mvaaa bbb# 此时bbb目录不存在

# 将a.txt文件移动到bbb目录下,并改名为abc.txt

mva.txt ./bbb/abc.txt

7、cat和more

cat读取文本文件,一次性输出到终端窗口中,并且光标停留在末尾

more 分页读取文本文件,一次读取一页可以使用命令进行换行或翻页

enter 向下一行或n行 ,可以设置

空格 向下翻一页

b向上翻一页

q退出预览

注意,无论是cat还是more只适合读取中小型文件,不适合读取大型文件

# 使用cat读取文本信息

cata.txt

# 使用more读取文本信息

more a.txt

8、cp命令

cp用于复制文件

cp  源文件名  目标文件名

cp命令与mv命令使用方式基本一致,只是在复制或移动完成后,cp命令会保留源文件,mv命令会删除源文件

# 复制a.txt到当前目录下,命名为b.txt

cpa.txt b.txt

# 复制a.txt文件到ccc目录下

cpa.txt ccc# ccc目录存在

# 复制aaa目录到当前目录下,并改名为bbb

cp-raaa bbb# bbb目录不存在

# 复制aaa目录到ccc目录下

cp-raaa ccc# ccc目录存在

9、ps和kill

ps查看当前活跃进程信息

-ef  查看所有进程信息

kill -9 杀死进程

kill -9 进程号

10、ifconfig命令

获取当前主机的网络环境信息

mac  和linux中使用ifconfig

windows 使用ipconfig

11、clear清空窗口命令

对当前终端窗口进行清空

清空不是删除历史命令,而是将其上移,使光标处于终端窗口的第一行

ctrl + l 也可以进行清空窗口

12、重启及关机命令

reboot  重启命令

shutdown -h now : 立即关机

shutdown -h 10 : 十分钟后关机

halt:立即关机

13、which命令

which是查询当前的可执行文件所在位置的绝对路径

which ls  :查询ls所在位置的绝对路径

ll命令就是系统底层调用了ls -l  并没有ll命令

14、hostname

使用hostname可以查询主机名称

15、grep和管道|

grep 要查询的文本信息  目标文本文件

| 第一个命令的输出,就是第二个命令的输入

# 查询所有的进程  (所有的进程信息就是输出)

ps-ef

# 从initial。。。文件中查询a文本出现的位置 (目标文本文件就是输入)

grepa initial。。。。

# 查询所有进程中包含mysql的信息(下边两行信息即为如下命令的输出)

ps-ef|grepmysql

# mysql      1406      1  0 01:14 ?        00:05:32 /usr/sbin/mysqld

# root      11458  10323  0 10:29 pts/1    00:00:00 grep --color=auto mysql

# 查询所有进程中,包含mysql且为root用户服务的信息

ps-ef|grepmysql |greproot

# 查询6月份创建的所有名字中带a的文件信息

ll |grepa |grep6月

16、用户管理命令

创建用户:useradd  用户名

设置用户密码: passwd  用户名

删除用户: userdel -r 用户名

当前用户如果已经登录或远程访问则需要先关闭进程才可以被删除

17、用户权限管理

怎样查看用户权限:ll  或者ls-l 前10列数据进行了文件或目录的权限展示

第一列:文件类型:d 文件夹  -普通文件  l 连接

后9列:权限展示

前三列:当前用户权限(u)user

中间三列:用户组权限(g)group

后三列:其他用户权限(o)other

权限类型:

r 读取权限

w 写入权限

x 可执行权限

-没有权限

字母型权限设置

# 给a.txt文件添加当前用户的可执行权限

chmodu+x a.txt

# 给a.txt文件当前用户减少写入权限

chmodu-w a.txt

# 给a.txt,当前用户添加写入权限,给所在组用户减少写入权限,给其他用户增加只读权限

chmodu+w,g-w,o+r a.txt

# 给aaa目录,组用户添加写入权限,减少可执行权限,变为(rw),给其他用户增加写入权限

chmodg=rw,o+w aaa

数字型权限设置:r:4  w:2 x:1

# 给aaa.txt文件条件当前用户可读可写可执行,所属组可读可写,其他用户只可以读

chmod764aaa.txt

18、vi编辑器

vi编辑器有三种模式:命令模式,插入模式,末行模式(底行模式)

命令模式

进入插入模式:o O i a

进入末行模式::

插入模式

进入末行模式:先使用esc进入命令模式,使用:进入末行模式

进入命令模式:esc

末行模式

进入命令模式: enter  esc

进入插入模式:使用esc进入命令模式,使用o O i a进入插入模式

19、数据库概述

数据库就是存储数据的仓库,程序员可以在数据库中进行数据的增删改查操作

数据库分为关系型数据库和菲关系型数据库

关系型数据库:采用二维表格模型创建的数据库,适用于储存逻辑复杂的大型数据

Oracle, mysql,sqlite,sqlsever,db2

非关系型数据库:大多采用key-value结构存储数据,适用于结构简单,数据量大或需要快速存取的数据

Redis, hbase,mongodb

20、MySQL数据库的登录和退出

mysql数据库是一个关系型数据库管理系统

mysql优势:

开源免费

支持大型数据库

使用标准的sql语言开发

支持跨平台,多种语言接口

我们当前课程使用的是8.0社区版mysql进行学习

mysql的登录和退出

# 登录方式一:

mysql-uroot-p回车

密码

# 登录方式二:

mysql-uroot-p密码

# 登录方式三:

mysql--user=root--password=密码

# 退出方式一:

exit

# 退出方式二:

quit

# 退出方式三:

ctrl+z

mysql支持远程连接

# 远程连接方式一:

mysql--user=root--host=192.168.88.100--password=密码

# 远程连接方式二:

mysql-uroot-h192.168.88.100-p密码

21、sql语句

sql语句的分类

DDL:数据库定义语言:对数据库和数据表进行构建,修改和删除

DML:数据库操作语言:对数据表中的记录进行增加,修改和删除

DQL:数据库查询语言:对数据表中的记录进行查询

DCL:对用户权限进行管理,对数据安全等级进行设定,用户的添加和删除

sql通用语法:

可以单行显示,也可以多行显示,以分号结尾

可以随意换行或者缩进,不影响sql语句的执行

关键字不区分大小写

注释类型

单行注释  --  #  ctrl + /

多行注释/**/

你可能感兴趣的:(2021-07-30)