Linux常用命令


Linux简介

电脑 = 硬件 + 操作系统(软件)
Linux一般用来做服务器端的操作系统,开源的,免费的
Linux注重安全性,稳定性,高并发处理能力,没有优异的可视化界面
Ubuntu RedHat CentOS
安装的时候记得选择桌面软件,不然没有可视化界面

Linux的目录结构

·只有一个跟目录
·树结构,层级结构

目录名内容
Root管理员目录
Bin ->usr/bin存放系统预装的可执行文件,可以在任何目录下运行
Usr是linux的系统资源目录
Usr/local/bin存放用户自己的可执行文件,可以在任何目录下运行
Lib ->usr/lib存放着系统最基本的动态链接共享库,类似于DDL库
Boot存放启动Linux时使用的一些核心文件,镜像文件等
Dev是device(设备)的缩写,存放外部设备,也是以文件的形式存在
Etc存放所有的系统管理所需的配置文件
Home用户的主目录,每个用户都有一个自己的目录
Var把经常修改的文件放在这,例如日志文件
Mnt系统提供该目录是为了让用户临时挂载别的文件系统,可以挂载光驱
opt这是给linux额外安装软件所存放的目录,例如Mysql
Tmp存放临时文件的

Linux远程操作

Xshell: Linux的终端模拟软件

安装并破解: 安装后运行两个bat文件即可
连接远程linux系统: 创建会话:根据ip地址 ifconfig 192.168.244.130
在这里插入图片描述
Xshell连接成功
在这里插入图片描述

Xftp:文件传输软件

安装并破解:也是点击两个bat命令
在这里插入图片描述
在这里插入图片描述
开始传输,选择目录位置,双击即可
在这里插入图片描述

传输成功
在这里插入图片描述

vi和vim

是linux的文本编辑器,查看或者编辑文本,就好像windows中的记事本
Vim是vi的增强版

使用:

一般模式:用vim 命令打开文件(vim 文件名)只能读
编辑模式:在一般模式下,按下 i 或 a 或 I 或 A 键 即可进入写,只能编辑,不能保存

按下ESC,可以回到一般模式
命令行模式:在一般模式下,按下 shift+;
输入: q!------不保存,强制退出
wq -------- 保存

文件写入流程命令
Vim 文件名 --> 按下i --> 输入 --> 按下esc --> 按下shift+; --> wq

常用快捷键:
复制当前行: 在一般模式下,按yy
黏贴到下一行: 在一般模式下,按p
复制当前行往下5行: 在一般模式下,按5yy,然后按p即可黏贴
在文本文件中查找关键字: 在命令行模式下,输入 /关键字 ,回车
按n表示光标查找下一个关键字
在这里插入图片描述

删除光标所在的当前行: 在一般模式下,按dd
删除光标所在往下5行: 在一般模式下,按5dd
撤销上次编辑的内容: 在一般模式下,按u
显示行号: 在命令行模式下,输入 set nu 取消是 set nonu
在这里插入图片描述

Linux中的用户管理

任何使用linux的用户必须使用合法的账户和密码
Root是系统管理员账户

1添加用户: useradd 用户名

  1. 自动创建一个指定用户名的用户
  2. 在home后面自动创建一个属于新用户的文件夹
  3. 创建一个组

2给用户设置密码: passwd 用户名 --> 输入密码
在这里插入图片描述
不够安全,密码不通过

3删除用户: userdel 用户名
在这里插入图片描述

userdel -r 用户名 删除用户及用户的文件夹

4查看用户信息: id 用户名
在这里插入图片描述

Gid是主组 后面是附加组,加组是为了增加权限

5切换用户: su 用户名
权限低到高才需要输入密码

Linux中的组管理

组:相当于角色的概念,每个角色都有一些权限
同一组的用户,就有相同的权限
每一个用户至少属于一个组,不能独立于组的存在

1添加组: groupadd 组名

2删除组: groupdel 组名

3把用户添加到组中: gpasswd -a 用户名 组名
在这里插入图片描述

4把用户从组中移除: gpasswd -d 用户名 组名

5创建用户时,指定所属的组(主组): useradd -g 组名 用户名

文件和目录操作命令

1查看当前所在的目录: pwd
在这里插入图片描述

2查看指定目录下的子目录: ls 目录名

  • ls -l 指定目录 列表的形式展示
  • ls -a 指定目录 显示目录(包括虚拟目录)

3切换目录: cd 目录名

  • 绝对目录,相对目录
  • cd ~:当前用户的根目录
  • cd … :当前目录的上一级目录
  • . :当前目录

4创建目录: mkdir 目录名

  • 绝对目录,相对目录
  • mkdir test1 或者 mkdir /opt/testDir/test1
  • 同时创建多个目录: Mkdir -p /opt/testDir/test1/test2/test3

5删除目录: rmdir 目录名

6创建空文件: touch 文件名 文件名 文件名

7复制文件: cp source(源) dest(目标)

8删除文件: rm 文件名 提示删除
rm -f 文件名 强制删除

9删除目录: rm -r 目录名 提示递归删除目录内的文件
rm -rf 目录名 强制递归删除目录

10移动目录: mv source(源) dest(目标) (剪切功能)

mv t3.txt t3_new.txt 对t3文件的重命名

查看文件内容: cat 文件名

11分页查看文件内容: more 文件名
一次性加载文件的所有内容到内存,按回车翻页
less 文件名
分页加载文件所有内容到内存,分页显示

12查看文件的部分行数:
head 【选项】 文件名
head -n 5 t4.txt 查看头五行的内容
head t4.txt 默认查看前十行
tail 【选项】 文件名
tail -n 5 t4.txt 查看后五行的内容
tail 4.txt 默认查看后十行

13 echo :输出系统变量或者常量的值到命令行终端
echo $JAVA_HOME 引用环境变量

14 > : 向指定文件中填写前一个命令的输出结果
查看命令 > 文件名
例如: ls > ret.txt
如果文件不存在则新建,如果存在则把以前的内容覆盖
cat text1.txt > text2.txt 实现文件内容的复制
15 >> : > 是覆盖文件内容,而这个 >> 是追加内容,不删除之前的内容

Linux中过于日期和时间的操作命令:

1 date 查看系统当前的完整的日期和时间
date +%Y 系统的当前年份
date +%m 系统的当前月份
date +%d 系统的当前日期
date ’+%Y-%m-%d %H:%M:%S’ 按格式输出显示
date -S ‘2020-10-32 10:10:30’ 设置当确定系统时间

2 查看系统日历: cal
cal 2020: 查看2020年12个月的日历

linux中关于搜索文件或者目录的命令:find

1 find 【搜索范围】 【搜索标准】 关键字
默认是-name 按名称搜索
-size是按大小搜索
-user是按文件的所有者搜索
find *.txt
find e
find /etc -size +5k
find /etc -user zhangshang

2 locate: 搜索效率比find高
在整棵目录树中搜索文件或者目录,都是根据名称搜索,不去访问目录 下的磁盘,效率高,并不常用,因为不能及时反应当前系统的目录。
一般是先updatedb : 刷新当前的目录树,更新系统修改的内容,同步系统
然后再locate

3过滤命令: grep
cat test1.txt|grep beijing 查看含有beijing的数据行

压缩与解压命令

1 压缩或者解压单个文件: gzip 文件名: 压缩单个文件 .gz
gunzip .gz压缩包名: 删除压缩包

2 压缩(打包)或者解压多个文件和目录:
zip 目标压缩包名称(通常使用.zip) 文件或者目录列表
unzip 压缩包名(.zip) -d 解压到的目录名
zip ret.zip t1.txt t2.txt
unzip test.zip -d test3

3 压缩(打包)或者解压多个文件和目录: tar
不像上面的压缩和解压需要两个命令名
tar 【选项】 目标压缩包名称 .tar.gz 要压缩的文件或者目录列表
-c: 打包或者压缩
tar 【选项】 压缩包名称 .tar.gz -C: 解压目录名
-x: 解压
常用,一般压缩操作用这个命令,比较方便
tar -zcvf xxx.tar.gz 文件名或者目录列表
tar -zxvf xxx.tar.gz -C 解压目录名
tar -zcvf mytar.tar.gz ret.txt text1.txt
tar -zxvf mytar.tar.gz -C /opt/testDir/test5

Linux文件与组

1基本介绍
用户一定要属于一个主组,后面加入的都是附加组
在linux中,每一个文件或者目录也必须属于一个组,不能属于多个组

文件或者目录通过组来控制哪些用户可以对他进行哪些操作,即文件或者目录的访问权限

在文件或者目录看来: linux系统中所有的用户分为三类:
·所有者: 默认情况下,文件或者目录的所有者都是创建者,可以修改
·同组用户:跟文件或者目录属于同一个组的用户
·其他用户:既不是所有者,也不是同组用户

2查看文件的所有者和所在的组 ls -l

3修改文件的所有者: chown 新的所有者 文件名
chown 新的所有者 :新的组 文件名

修改目录下的所有文件
chown -R zhangsan:dev test2 递归修改目录的所有者和所在的组

4.修改文件或者目录的所在组:
不修改所有者,只修改组
chgrp 新的组 文件名或者目录名

Linux中文件或者目录的权限管理

1 文件或者目录的三种权限:
在linux中,任何文件或者目录都有三种权限

对文件而言:
· 读(Read) cat more less head tail
· 写(Writer) vi vim > >>
· 执行(Execute) .sh文件

对目录而言:
· 读(Read) ls
· 写(Writer) 创建子目录,创建删除剪切文件,重命名
· 执行(Execute) cd 进入目录

2文件或者目录的权限控制 r w x
在linux中,任何一个文件或者目录都有三部分权限:
所有者权限,同组用户权限,其他组用户权限
rwx 三种权限都有, rw_只有读和写权限, r_x只有读和执行权限
在这里插入图片描述

对应所有者,同组,不同组的权限
创建文件的话,所有者和同组用户默认是有读和写权限

3查看文件或者目录的权限: ls -aul

4修改权限: chmod
用u,g,o表示所有者,同组用户,其他组用户
用+,-,= 表示给用户增加或者减少权限
chmod u-w t1.txt 去掉所有者的写权限
chmod u+w t1.txt 增加所有者的写权限
chmod g-w,g-x t1.txt 修改同组的写权限和执行权限
chmod g+w t1.txt 增加同组的写权限
chmod o=w-- t1.txt 增加其他组的写权限

5使用数字的方式修改文件或者目录的权限:
每一个权限都可以用数字来表示:
r w x
4 2 1

每一个文件或者目录都有三部分权限,每一部分权限都可以用一组数据之和来表示
rw- r-x
6 5

753: 表示 rwx r-x -wx 所有者拥有全部权限,同组有读和执行权限,其他…

777:表示rwx rwx rwx 全权限

chmod 777 t5.txt 把文件设置为全权限
这个比上面的方便很多,不用一个一个写
在这里插入图片描述

网络配置
主要是配置ip地址即可
在linux的配置文件中:/etc/sysconfig/network-scripts
配置静态IP地址

进程管理

1查看进程: ps (process show)
ps 只会显示应用进程
ps -e 显示系统进程
ps -ef 以全格式的形式显示所有进程,用于查看软件是否启动

查看防火墙是否打开
在这里插入图片描述
2关闭进程: kill -9 PID(进程号)

Linux中的服务管理

1系统进程就是守护进程,为linux正常运行提供的服务进程

2操作服务:

systemctl 【start,stop,restart, reload, status, enable】 服务名称
systemctl status firewalld 查看防火墙状态
systemctl stop firewalld 关闭防火墙状态
systemctl start firewalld 开启防火墙状态

Linux软件包管理

1 RPM包 软件安装包
RPM:一种Linux的软件包的打包和安装工具,它操作的软件包都是.rpm结尾
RPM命令:
查看当前系统已经安装的RPM软件包: rpm -qa
卸载rpm软件包: rpm -e firebox
安装rpm软件包: rpm -ivh xxx.rpm

2 YUM包:是一种基于RPM的软件包管理工具
它能够从指定服务器上自动下载RPM包并且自动安装,可以自动处理软件包之间的依赖关系,像maven

YUM命令:
查看当前系统已经安装的RPM软件包: yum list installed
卸载rpm软件包: yum remove firefox
安装rpm安装包: yum install firefox

Linux中搭建Javaee环境

1下载软件的tar.gz安装包
2用xftp传到/opt目录内
3输入命令解压 tar -zxvf jdk.gz -C /opt
4配置环境变量
在 /etc里面打开 vim profile 配置文件
在这里插入图片描述
5 source重新加载配置文件
成功安装
在这里插入图片描述

安装Tomcat

和jdk安装类似,不过不用配置环境变量
打开方式:到文件的bin目录下打开start.sh启动文件
在这里插入图片描述

访问8080端口即可验证打开成功

如果要在本机访问linux开启的8080端口服务,因为这是属于两个计算机之间的访问,属于跨域了,则需要先关闭linux的防火墙,然后在本机浏览器输入linux的ip地址加端口
成功
在这里插入图片描述

安装mysql

1查看是否安装了mariadb
会和mysql冲突,应该先卸载掉mariadb
检查是否存在:yum list installed |grep mariadb
卸载:yum -y remove xxxx
2上传解压mysql.tar.gz安装包
在这里插入图片描述

3利用mv 重命名mysql软件
4创建数据文件夹data
data是mysql用来存放数据库文件的
5创建用来执行mysqld命令的Linux用户
创建mysql用户,用来执行MYSQL的命令mysqld
6初始化mysql
使用mysqld命令来初始化,在bin目录下:
./mysqld --initalize --user=mysql --datadir=/opt/mysql-5.7.18/data --basedir=/opt/mysql-5.7.18

因为mysql的安装包版本过低,还未成功安装到linux,后续安装好会补齐安装流程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值