Linux基础知识

1、目录结构

(1)只有一个根
(2)层级式的子目录
在这里插入图片描述
bin ->usr/bin 这里存放的都会系统的可执行文件,在任何目录下都可以执行(配置到path环境变量里)
usr/local/bin:放用户自己的可执行文件,可以再任何目录下执行
etc:放置配置文件。配置环境变量(etc/profile)
home:存放每个用户的根目录,用来保存私人数据,默认情况下,目录名和自己的用户名相同
opt:存放给Linux安装的额外安装的软件。相当于Windows系统中的program file。

按照目录来,可不敢乱放)

**

2、Linux的远程操作(操作公司机房)

**
1)用软件远程连Linux去操作:

	xshell:Linux的终端模拟软件。
    ifconfig:可查看ip地址
    xftp:传输文件软件

**

3、vi;vim

**vi,vim是Linux中的文本编辑器,用来在Linux中查看或者编辑文本文件,就好像Windows中的记事本。vim是vi的增强版
vim编辑器的使用:
     创建或查看文本编辑器、

  一般模式:用vim命令打开文件(vim test.txt),进入一般模式;只能查看文件内容,并且可以通过上下左右键来移动光标来查看文件的某一部分,但是不能编辑文件内容。
  编辑模式;在一般模式下,按i/a/I/A键,就可以进入编辑模式,编辑模式可以编辑文件内容,但是不能保存编辑的内容。按esc键,可以回到一般模式
  命令行模式;在一般模式下,按shift: 进入命令模式;
                         输入q!,不保存,并且强制退出
                                 wq,保存,并且推出
                                 q,只是退出

vi和vim编译器的快捷键;
1)幅值当前行:在一般模式下,按(yy)。把光标所在的行幅值到剪切板
按p.吧剪切板中的内容粘贴到光标所在的下一行。
2)复制当前行往下的5行,(5yy),把光标所在的行往下5行复制到剪切板
( p),吧剪切板中的内容粘贴到光标所在的下一行。
3)在文件中搜索关键字,在命令行模式下,输入(/关键字),回车 ;
                    按(n),查找下一个关键字
4)删除光标所在的当前行:在一般模式下,按(dd),删除光标所在的行
5)删除光标所在的行以下5行:在一般模式下,按(5dd)
6)到达文档的最首行,一般模式下,按【gg】
  到达文本的最末行,一般模式下,按【G】
7)撤销,一般模式下,按【u】
8)显示行号,进入命令行模式,(:set nu)
  取消文件行号,进入命令模式(:set nonu)

在这里插入图片描述

在这里插入图片描述
**

7、Linux用户管理

**
1)任何 用户,必须使用一个合法的账号和密码;账号和密码都是向系统管理员申请。
  root是Linux系统安装时默认创建的系统管理员账号,由root撞见普通的账号。
2)添加用户:useradd [选项] 用户名
  用root账号输入命令:useradd lisi
  创建一个用户list;
   在/ home目录下创建用的根目录,目录名称默认跟用户名相同;
   创建一个组list,linux中任何一个用户都至少属于一个组,新建用户时如果不指定组,则会新建一个组,组名跟用户名相同,并且把该用户添加到该组中
useradd -d home/ww wangwu 创建用户的同时,指定用户的根目录
3)给用户设置密码:passwd 用户名 -> 设置密码 *密码要满足一定的复杂度
4)删除用户:userdl 用户名;userel -r 删除用户的同时级联删除它的主目录
  切换账号 su 用户名
5)查看用户的基本信息(用户的标识和组):id 用户名 ;可以通过组来控制文件的访问权限
6)切换用户:su 用户名
* 从权限高的用户到权限底的用户,不需要密码验证
 从权限低的用户到权限高的用户,需要密码验证

**

8、Linux的组管理;

**
1)可以对有共性的用户进行统一的管理;每一个用户至少属于一个组,不能独立于组存在,也可以属于多个组
新建用户时如果不指定组,则会新建一个组,组名跟用户名相同,并且把该用户添加到该组中
2)添加组; groupadd 组名
3)删除组:groupdel 组名
4)把用户添加到组中:gpasswd -a 用户名 组名
5)把用户从组中移除:gpasswd -d 用户名 组名
6)创建用户时,指定所属的组(主组):useradd -g 组名 用户名
**

9、Linux中的系统操作命令

**
关机:shutdown now 立即关机
    shutdown -h xxx 定时关机
    shutdown -r now 立即重启
重启:reboot 立即重启
同步数据库;sync
**

10、Linux中的帮助命令:

**
1)查看Linux系统手册上的帮助信息:man 命令
  分屏显示,按回车翻一行、按空格翻一页,q退出
2)help 查看命令的内置帮助信息 : help 命令
**

11、Linux中文件和目录操作命令:

**
1)查看当前所在的目录:pwd
2)查看指定目录下所有的子目录或者文件列表:ls【指定目录】
   ls /home 查看home目录下的子目录和文件
   ls 查看当前目录下的子目录文件
   ls -l /home 搜索结果以列表的形式显示
   ls -a /home 显示指定目录下所有的子目录和文件(包括虚拟的目录)
   ls -al /home 以列表的形式显示指定目录下所有的子目录和文件(包括虚拟的目录)
3)切换目录:cd 目录名
          |-> 绝对目录:从盘符开始的目录叫绝对目录 cd /opt/ test (以/根目录开始往下找)
          ~:表示当前用户的根目录。在任何目录下执行:cd ~,进入当前用户的根目录
           | ->相对目录 : 以目录名开始的目录叫相对目录 cd test
           …:表示当前目录的上一级目录,从当前目录开始查找上一级目录
           . : 当前目录
           xxx.sh=>./xxx.sh
4)创建目录:mkdir 目录名
           |-》绝对目录
           |-》相对目录
         mkdi r /opt/test/test 1 .//在 opt / test目录下创建一个目录test 1
         mkdir / test2 //在/opt/test目录下创建一个test2
        mkdir -p /opt/test/test 3/test4 //在/opt/test目录下创建目录test3,并且      在test3下创建test4(一次创建多级目录)
5)删除一个空目录:rmdir 目录名
6)创建文件: vi/vim (创建以后会自动打开)
        touch创建一个或多个空文件 : touch 文件名列表(文件名之间用空格隔开)
        touch t1.txt
        touch t1.txt t2.txt t3.txt
7)复制文件或目录:cp source(源) dest(目标)
          cp t1.txt test // 把t1. txt文件复制到test目录中
          cp -r test2 test5 //把目录复制到另一个目录里
8)删除文件或目录:rm 文件名或目录名
          rm t1.txt 提示删除文件
          rm -f t2.txt 强制删除文件 force
          rm -r test2 递归删除 ,有子文件不会提醒 。若没有-r就会逐一提示
         rm -rf test2 递归强制删除目录
9)移动目录或文件(剪切):mv source (源) dest (目标)
              mv t1.txt test1
              mv test1 test2
              mv t1.txt t2 .txt 文件重命名
*如果目标中已经存在该文件或者目录,则会提示是否覆盖
10)查看文件内容:cat 文件名
         文件内容一次性显示出来。
         cat t4.txt
         cat -n t4.txt 显示行号
11)分页查看文件内容:more 文件名 一次性加载文件所有内容到内存,分页显示
            按回车翻一行、按空格翻一页
            more t4.txt

12)分页查看文件内容: less 文件名 分页加载文件所有内容到内存,分页显示
            less t4.txt
            按回车翻一行、按空格翻一页,按q退出查看
13)查看文件的头10行:head 【选项】 文件名
            head t4.txt
            head -n 5 t4.txt
14)查看文件的后10行:tail [选项] 文件名
            tail t4.txt
            tail -n 5 t4.txt
15)echo: 输出系统变量或者常量的值到命令行终端
echo $JAVA_HOME 显示环境变量
echo hello //在终端命令行内显示hello
16) > :向指定文件填写前一个命令的输出结果:查看命令 > 文件名
(把前一个查看命令的结果输出到指定的文件中 )
如果目标文件不存在,则会新建一个文件
*如果文件不存在,则新建一个文件
如果文件存在,则会把原来文件覆盖
cat ret.txt > t3_new.txt 文件内容的复制
cat t4.txt > t3_new.txt 原来 t3_new.txt 内的内容被覆盖
**

12、Linux中关于日期和时间的操作命令:

**
1)查看或者设置系统的日期或者时间:data
  data 查看系统当前的完整的日期和时间
  data +%Y 系统当前的年份
  data +%m 系统当前的月份
  data +%d 系统当前的日期

data ‘+%Y-%m-%d %H:%M:%S’ 按yyy-MM-dd HH:mm:ss 格式显示

data -s ‘2020-10-20 10:30:10’ 设置当前的系统时间

2)查看系统日历:cal
  cal :查看当前月份的日历
  cal 2020:查看指定年份的日历

**

13、Linux中关于搜索文件或者目录的命令:

**
1)find [搜索范围 ] [搜索标准]关键字
      |-》-name:默认按名称搜索 (文件或者目录所在的路径也在搜索范围之内)
      |-》-size :按文件大小搜索
      |-》-user:按文件的所有者搜索
find *.txt// 通配符。搜索当前目录下所有的.txt文件
find e //搜索当前目录下,所有名称 中包含e的那些文件或者目录
find /etc *.txt // 搜索、etc目录下的.txt文件
find /etc -size +5 //按大于5兆的大小搜索 +5k大于5k
find /etc -user zhangsan 搜索/etc目录下所有的所有者是张三的文件和目录
2)locate指令 :在整个目录树里搜索文件或者目录,都是根据名称搜索,效率高
  updatedb同步数据库
  locate 关键字
  updatedb
  locate *.txt
3)搜索过滤命令,在前一个搜索命令的结果中进行按名称进一步过滤:
搜索命令过滤 |grep[选项]过滤条件 ;
查看命令|grep[选项]过滤条件
find *.txt|grep new 搜索当前目录下,所有名称包含new的.txt文件
find /etc -size -5k|grep firefox
cat t1.txt |grep beijing /查看t1.txt中含有beijing的文件
cat t1.txt |grep -ni beijing / n显示行号,i不区分大小写

ls -al |grep new //查看名字里含有new的子目录

**

14、Linux中有关压缩和解压的命令:

**
1)压缩或者解压【单个文件】:(不具备打包或者解包的功能)
  gzip 文件名:压缩单个文件,生成一个.gz的压缩包,且会自动把原来的文件删除
  gunzip .gz压缩包名: 解压.gz压缩包,并且把原来的文件删除
  gzip re.txt
  gunzip re.txt.gz
2)压缩(打包)或者解压多个文件和目录:zip 文件或者目录列表 目标压缩包名称(可自己起,通常使用.zip):
unzip 压缩包名(.zip)-d 解压目录名:将指定的.zip压缩包解压到当前目录(或者指定目录)

             zip  test.zip   ret.txt t1.txt text2 
              unzip test.zip -d test3 //将压缩包解压到test3里面的文件
               zip mytest.zip test.zip t3_new.txt t4.txt test2

3)压缩(打包)或者解压多个文件和目录:tar [选项] 目标压缩包名称(xx.tar.gz)文件或者目录列表
|-> c:打包或者压缩
tar [选项]压缩包名(xxx.tar.gz)-c:将指定的.tar.gz压缩包解压到当前目录(或者指定目录)
|->x:解压
|->v:显示详细信息
|->f:指定压缩后的文件名
|->z:打开同时压缩
tar -zcvf xx.tar.gz 文件或者目录列表
tar -zxvf xx.tar.gz -c

**

15、文件或目录与组

**
1)文件或者目录与组的基本介绍
在Linux中,每一个用户至上属于一个组,主组不可以改,附加组可以改,用户不能独立于组存在;
在Linux中,每一个文件也必须属于一个组,而且只能属于一个组;
文件或者目录通过这些组来控制哪些用户可以对它进行哪些操作,即文件或者目录的访问权限。
在文件或者目录看来,Linux系统中所有的用户分为三类:
  所有者:默认情况下,文件或者目录的所有者都是创建者,可以修改。
  同组用户:跟文件或者目录属于同一组的用户
  其他组用户:既不是文件或者目录的所有者,也不是同者用户
2)查看文件的所有者和所在的组
 ls -l
3)修改文件的所有者:chown 新的所有者 文件名
chown 新的所有者 :新的组 文件名 //改变新的组合新的所有者

chown zhangsan t1.txt
chown zhangsan : dev t1.txt
chown -R zhangsan :dev test2 递归修改目录的所有者和目录
4)只修改文件和目录所在组:chgrp 新的组 文件名或目录名
  chgrp dev t2.txt
  chgrp -R dev test3
**

16、Linux里的文件或目录权限管理

**
1)准备工作:
  一个用户至少属于一个组,也可以属于多个组;
  一个文件或者目录也必须属于一个,并且只能属于一个组;
  在一个文件或者目录看来,Linux系统中所有的用户可以分为三类:
    所有者:
    同组用户:
   其他组用户:
2)Linux中任何文件或者目录有三种权限
  读(Read)
  --查看文件内容 cat more less head tail
  查看目录下的子目录 和文件 ls
  写(write)
  --修改文件 vi/vim
  修改目录
  执行(Execute)
  --脚本文件 就是可执行文件(.sh),可以直接执行,比如:./xxx.sh
  能否进入目录,就代表是否可以执行目录
3)文件或者目录的权限控制
  在Linux中,任何的一个文件或者目录都有三部分权限:所有者权限,同组用户权限、其他组用户权限
  第一部分权限,所有者权限:文件或者目录的所有者对该文件 所拥有的权限,使用r\w\x分别表示读写执行的权限。比如:rwx–表示所有者拥有读写执行的权限,r-x–表示所有者拥有读和执行的权限,r–:只拥有读的权限,—:没有任何权限
  第二部分权限,同组用户权限:文件或者目录的同组用户对改文件所拥有的权限
  第三部分权限,其他组用户权限
4)查看文件或者目录的权限: ls -l ls -aul
5)修改文件或者目录的权限:chmod
  用r\w\x\分别表示读写执行的权限
  用u\g\o\a分别表示给所有组、同组用户、其他组用户、所有用户修改权限
  用±=分别表示给指定的用户增加、减少、设置对应的权限
  chmod g-w,o+w t1.txt // 对同组用户减少写的权限,对其他组用户增加写的权限
  chmod g=rwx t1.txt //给同组用户设置权限
6)使用数字的方式来修改文件或者目录的权限:
  每一个权限都可以用一个数字来表示:
  r\w\x
  4\2\1 //从右向左用2的几次方来表示
  2^2 ……
 每一个文件或者目录都有三部分权限,每一部分权限都可以用一组数据之和来表示,三部分权限就是一组三个数据序列:
rw- r-x r-x
6 5 5
753:rwx/r-x / -wx
777:全权限,所有用户都可以rwx
chmod 777 t5.txt
**

17、网络配置(基于虚拟机的ip地址配置)

**
  在Linux的配置文件:vim /etc/sysconfig/network-scripts/ifcfg-ens33 ///tab键可以补全命令
 PROXY_METHOD=“static”
  ONBOOT=“yes”
 到虚拟机里找->编辑->虚拟网络编辑器
 IPADDR=192.168.11.128
 GATEWAY=192.168.159.2 // 网关 NAT设置里面找
  DNS1=192.168.159.2 //与网关一置

重启Linux:reboot
**

18、Linux中的进程管理器

**
 线程:一个程序的执行线路
  进程:一个程序的执行,一个进程占用一个端口。
查看Linux里的进程,然后关闭不需要的进程。
查看正在运行的进程:ps ( process status )
  ps //只会显示应用进程
  ps -e //显示所有进程
  ps -ef //以全格式的形式显示所有进程
//通常用于查看Linux中的某一些软件或者应用是否处于启动状态
  ps -ef|grep firewalld //查看含有防火墙关键字的进程是否开启
**

19、Linux中的服务管理

**
1)服务是支持Linux运行的一些必要程序,本质上也是进程,叫守护进程。守护进程通常默默的运行在后台,为应用提供必要的支撑,如sshd\防火墙等。
2)操作服务:启动、关闭、开机启动、查看状态
    |-> systemctl [start\stop\restart\reload\ststus\enable] 服务名称

	systemctl status firewalld //查看防火墙状态
	systemctl stop firewalld   //关闭防火墙状态
	systemctl start firewalld  //开启防火墙状态
	systemctl enable firewalld  //设置防火墙开机启动

**

20、Linux软件安装包的管理

**
1)RPM软件包:一种Linux的软件包的打包和安装工具,它操作的软件包都是.rpm结尾。
  使用RPM:rpm命令|
  查看当前系统中已经安装的rpm软件包:rpm -qa|grep firewalld
  卸载rpm软件包:rpm -e firewalld
  安装rpm包:rpm -ivh xxx.rpm
  cp firefox-52.7.0-1.el7.centos.x86_64.rpm /opt // 拷贝到opt里面去安装
2)YUM包管理:是一种基于rpm的软件包管理工具,它能够从指定服务器上自动下载rpm包并且自动安装,可以自动处理软件包之间的依赖关系。
  查看当前系统中已经安装的rpm软件包:yum list installed|grep firfox
  卸载rpm软件包:yum remove XXX.x86_64
  安装rpm包:yum install firefox
**

21、Linux中搭建JavaEE开发环境

**
(Linux仅是一个运行环境,编写代码还是在windows里)、

自动密码:j4M/bBdx-vcj

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猪悟空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值