当前位置: 首页 > news >正文

linux简单入门

目录

  • Linux简介
  • Linux目录结构
  • Linux文件命令
    • 文件处理命令
    • 文件查看命令
      • 常用文件查看命令
    • Linux的用户和组介绍
    • Linux权限管理

Linux简介

Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它支持32位和64位硬件,能运行主要的Unix工具软件、应用程序和网络协议。
Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。----来自百度

Linux目录结构

linux没有像windows一样的盘符该鸟,所有文件都在根目录下存储。
在这里插入图片描述

  • 绝对路径:以根目录为起点,完整地表示到目标文件或目录的路径。

    • 比如就是/home/kali/1,表示的就是根目录下home目录下kali目录下的1文件
  • 相对路径:以当前目录为起点,完整地表示到目标文件或目录的路径。比如./kali/1

/ bin :基本程序,存放着最经常使用的命令
/boot:存放linux启动时的引导文件
/ dev :设备信息
/etc:存放系统管理所需的配置文件
/home:普通用户家目录
/lib:存放最基本的动态链接共享库,类似windows里的dll文件。
/media:系统识别的一些U盘、光驱等设备挂载到这个目录下
/mnt:默认临时挂载目录
/opt:这是给主机额外安装软件所摆放的目录
/proc:进程信息
/root:root用户家目录
/run:是一个临时文件系统,存储系统启动以来的信息
/sbin:存放的是系统管理员使用的系统管理命令
/srv:存放一些服务启动之后需要提取的数据
/sys:内核文件系统
/tmp:存放临时文件,重启后清空
/usr:用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录
/var:存放日志等不断扩充的文件目录

Linux文件命令

  • linux命令遵循一定的基本格式:Command [options] [argument] 也就是命令 [选项] [参数]

文件处理命令

  • ls:命令显示指定工作目录下的内容,如果不提
    供参数,ls将在当前目录上运行。

    • 选项与参数:
      -a:列出指定目录下的所有文件和子目录(包括以“.”开头的隐藏文件)。
      -l:使用长格式显示文件或目录的详细属性信息。

    • ls -al:使用格式化列出隐藏文件

  • touch:更新已存在的文件的事件标签,若文件不存在则创建一个新的文本文件

  • mkdir:创建目录

    • 参数:
      -p:若路径中目录不存在,则创建新目录
      mkdir -p dir/1/2/3/4创建多层目录
      -v:查看文件创建过程
  • cp:将一个或多个源文件复制到指定目录

    • 参数:
      -r :递归处理,将指定目录下的文件及子目录一并处理
      -p:拷贝的同时不修改文件属性,包括所有者,所属组,权限和时间
  • mv:命令用于移动或重命名目录或文件

    • 参数:
      -b: 若需覆盖文件,则覆盖先前备份
      -f:强制的意思,如果文件已经存在,不会询问直接覆盖
  • rm:用于删除一个文件或目录

    • 参数:
      -f:强制删除文件或目录
      -rf:选项-r与-f结合,删除目录中所有文件和子目录,且不一一确定
      -i:在删除文件或目录对要删除的内容逐一进行确认
  • rmdir:删除目录

    • 比如 rmdir dir
  • pwd:显示当前目录绝对路径
    cd命令:改变当前工作目录
    cd ~ //进入home目录,~表示home目录,每个用户的home目录不同,root用户的home目录为/root,其他用户的home目录默认为/home/用户名
    cd / 回到根目录
    cd … 回到上一级目录

文件查看命令

常用文件查看命令

  • cat

    • 原意:concatenate and display files
    • 文件功能:打印文件内容到输出设备
    • 格式:cat 文件名
    • 实例: cat 123.txt
    • 选项和参数
      -b:列出行号,仅针对非空白行号显示,空白行不标行号;
      -n:打印出行号,连同空白行也会有行号,与-b的选项不同
  • more

    • 查看file的内容(一页一页的显示档案内容)
    • 空格键(space):代表向下翻一页
      回车键(Enter):代表向下翻一行
      b 键:往前查看一页;
      q 键:退出。
      在这里插入图片描述
  • head:

    • 查看file的前10行
    • head -n 20 fliename 查看前20行
  • tail:

    • tail -n 文件名查看文件的后n行
    • tail -2 filename 查看一个文件的最后两行
      tail -n +100 只列出100行及以后的数据
  • grep命令可以在指定文本文件中匹配字符串,输出匹配字符串所在行的全部内容。

    • 命令格式: grep [选项] 关键字 查找范围
    • 常用选项
      -e:指定字符串做为查找文件内容
      -n: 在显示符合样式的那一行之前,标示出该行的行号
      -r:以递归的方式查找符合条件的文件,并打印出该字符串所在行的内容

编辑文件

  • vi编辑器

vi/vim 的介绍

是linux中最通用的文本编辑器,vim编辑器是从vi发展出来的一个性能能更强大的文本编辑器。可以主动的以字体颜色辨别语法的正确性,方便程序设计,vim与vi编辑器完全兼备

vi/vim 三种模式:命令模式/一般模式(command mode)、插入模式(input mode)、末行模式/指令命令模式(last line mode)。

插入模式:

在一般模式下按下键盘【i, I, o, O, a, A】进入插入模式,屏幕的左下方会出现【–INSERT–】的字样,表示当前模式下,用户可以编辑修改文本的内容。按下【Esc】则退出编辑模式。

末行模式/指令命令模式:

在一般模式下按下键盘【: / ?】任意一个,光标移动到最下面一行,进入末行模式。可以查找数据、替换、可保存文件、退出 vi、显示行号等操作。

  • 复制粘贴:
    yy 复制光标所在行
    p 粘贴
    dd 删除光标所在行(实际是剪切)
    x 删除当前光标所在的字符
    X(大写) 删除当前光标前一个字符
    光标移动:
    h 左移 j 下移 k 上移 l 右(四个箭头也可以上下左右移动)
    H 当前屏幕第一行
    M 当前屏幕中间
    L 当前屏幕最后一行

命令模式
:或者/
w 保存
q 退出
wq 或 x 保存退出
q!不保存强制退出
wq!强制保存并退出,管理员才有权限

Linux的用户和组介绍

用户

  • Linux用户类型分为三类:超级用户、系统用户和普通用户
  • 超级用户:用户名为root或USER ID(UID)为0的账号,具有一切权限,可以操作系统中的所有资源。Root用户可以进行基础的文件操作及特殊的系统管理,可以修改系统中的任何文件。
  • 系统用户 UID 为 1~999: Linux 系统为了避免因某个服务程序出现漏洞而被黑客提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏围。
  • 普通用户 UID 从 1000 开始:是由管理员创建的用于日常工作的用户,能够使用Linux的大部分资源,一些特定的权限受到控制。用户只对自己的目录有写权限,读写权限受一定的限制,有效保证了系统安全性。
  • 需要注意的是,UID 是不能冲突的,而且管理员创建的普通用户的 UID 默认是从 1000开始的(即使前面有闲置的号码)。

用户组

  • 有时我们需要让多个用户具有相同的权限,比如查看、修改某一个文件的权限,此时最好的方式是建立一个组,让这个组具有查看、修改此文件的权限,然后将所有需要访问此文件的用户放入这个组中。那么,所有用户就具有了和组一样的权限,这就是用户组。
  • 用户和用户组的对应关系有以下 4 种:
    • 一对一:一个用户可以存在一个组中,是组中的唯一成员;
    • 一对多:一个用户可以存在多个用户组中,此用户具有这多个组的共同权限;
    • 多对一:多个用户可以存在一个组中,这些用户具有和组相同的权限
    • 多对多:多个用户可以存在多个组中,也就是以上 3 种关系的扩展。

相关命令
id 查看当前用户身份信息
id user 查看user用户身份信息
whoami 查看当前登录用户名

sudo 以管理员身份执行命令,普通用户默认无法使用sudo命令,需要将用户添加到wheel组当中

su - username是用来改变当前用户的,如:su - root,就是将当前用户切换为root连同环境变量一同切换到root用户,用了su - root之后,下面所有的命令就可以不用打sudo了,因为当前用户已经是管理员root了。同时当从 root用户切换到普通用户时不需要输入密码,而从普通用户切换成 root用户需要进行验证;


  • useradd 创建新的用户
  • 格式:user [选项] 用户名
  • 选项:-d制定用户的家目录 ; -u指定用户逇默认UID; -g制定一个初始的用户基本组

  • passwd 修改用户密码、过期时间、认证信息等
  • 格式:passwd [选项] [用户名]
  • 参数
    • -l 锁定用户,禁止其登录
      -u 解除锁定,允许用户登录
      -d 使该用户可用空密码登录系统
      -e 强制用户在下次登录时修改密码

  • userdel 命令用于删除用户
  • 格式为“userdel [选项] 用户名”。
  • -r //同时删除用户及用户家目录

  • usermod用于修改用户的属性
  • 格式为“usermod [选项] 用户名”。
  • 参数
    • -d -m 参数-m 与参数-d 连用,可重新指定用户的家目录并自动把旧的数据转移过去
      -u 修改用户的 UID
      -g 变更所属用户组
      -G 变更附加用户组
      -l 修改用户名称

Linux权限管理

之前写过,点这里看

每个文件的权限针对三类对象进行定义:

  • 它的所有者(由u表示)
  • 它的所有组(由g代表),代表该组的所有成员
  • 其他(由o表示,除所有者和所有组的用户)

  • 以下三个命令控制与文件关联的权限:
  1. chmod 更改文件的权限
  2. chown 更改文件的所有者
  3. chgrp 更改所有者组

chmod 修改文件权限
选项
-R : 对目标目录下的所有文件与子目录进行相同的权限变更(以递归的方式逐个变更)

示例:
chmod o=w file 表示给其他人授予写入file这个文件的权限
chmod go-rw file 表示删除file中组群和其他人的读和写的权限


chgrp 更改文件的属组

语法格式
chgrp 选项 username filename

选项
-R:进行递归的持续变更,亦即连同次目录下的所有档案都变更

相关文章:

linux简单入门

目录Linux简介Linux目录结构Linux文件命令文件处理命令文件查看命令常用文件查看命令Linux的用户和组介绍Linux权限管理Linux简介 Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯本纳第克特托瓦兹&#xff0…...

给准备面试网络工程师岗位的应届生一些建议

你听完这个故事,应该会有所收获。最近有一个23届毕业的大学生和我聊天,他现在网络工程专业大四,因为今年6、7月份的时候毕业,所以现在面临找工作的问题。不管是现在找一份实习工作,还是毕业后找一份正式工作&#xff0…...

主线程与子线程之间相互通信(HandlerThread)

平时,我们一般都是在子线程中向主线程发送消息(要在主线程更新UI),从而完成请求的处理。那么如果需要主线程来向子线程发送消息,希望子线程来完成什么任务。该怎么做?这就是这篇文章将要讨论的内容。 一、…...

13基于双层优化的电动汽车日前-实时两阶段市场竞标

MATLAB代码:基于双层优化的电动汽车日前-实时两阶段市场竞标 关键词:日前-实时市场竞标 电动汽车 双层优化 编程语言:MATLAB平台 参考文献:考虑电动汽车可调度潜力的充电站两阶段市场投标策略_詹祥澎 内容简介:…...

REDIS19_zipList压缩列表详解、快递列表 - QuickList、跳表 - SkipList

文章目录①. 压缩列表 - zipList②. 快递列表 - QuickList③. 跳表 - SkipList①. 压缩列表 - zipList ①. ZipList是一种特殊的"双端链表",由一系列特殊编码的连续内存块组成。可以在任意一端进行压入/弹出操作,并且该操作的时间复杂度为O(1) (oxff:11111111) type…...

JavaScript 基础 - 第3天

文章目录JavaScript 基础 - 第3天笔记数组数组的基本使用定义数组和数组单元数据单元值类型数组长度属性操作数组JavaScript 基础 - 第3天笔记 数组 数组的基本使用 定义数组和数组单元 <script>// 1. 语法&#xff0c;使用 [] 来定义一个空数组// 定义一个空数组let…...

23.3.26总结

康托展开 是一个全排列与自然数的映射关系&#xff0c;康托展开的实质是计算当前序列在所有从小到大的全排列中的顺序&#xff0c;跟其逆序数有关。 例如&#xff1a;对于 1,2,3,4,5 来说&#xff0c;它的康托展开值为 0*4&#xff01;0*3&#xff01;0*2&#xff01;0*1&…...

【Java学习笔记】37.Java 网络编程

Java 网络编程 网络编程是指编写运行在多个设备&#xff08;计算机&#xff09;的程序&#xff0c;这些设备都通过网络连接起来。 java.net 包中 J2SE 的 API 包含有类和接口&#xff0c;它们提供低层次的通信细节。你可以直接使用这些类和接口&#xff0c;来专注于解决问题&…...

Azure OpenAI 官方指南03|DALL-E 的图像生成功能与安全过滤机制

2021年1月&#xff0c;OpenAI 推出 DALL-E。这是 GPT 模型在图像生成方面的人工智能应用。其名称来源于著名画家、艺术家萨尔瓦多 • 达利&#xff08;Dal&#xff09;和机器人总动员&#xff08;Wall-E&#xff09;。DALL-E 图像生成器&#xff0c;能够直接根据文本描述生成多…...

【数据结构】堆

文章目录前言堆的概念及结构堆初始化堆的判空堆的销毁插入数据删除数据堆的数据个数获取堆顶数据用数组创建堆对数组堆排序有关topk问题整体代码展示写在最后前言 &#x1f6a9;前面了解了树&#xff08;-> 传送门 <-&#xff09;的概念后&#xff0c;本章带大家来实现一…...

电脑硬盘文件数据误删除/格式化为什么可以恢复? 怎么恢复?谈谈文件删除与恢复背后的原理

Hello 大家好&#xff0c; 我是元存储~ 主页&#xff1a;元存储的博客_CSDN博客 1. 硬盘数据丢失场景 我们在每天办公还是记录数据的时候&#xff0c;文件存储大多数都是通过硬盘进行存储的&#xff0c;因此&#xff0c;使用多了&#xff0c;各种问题就会出现&#xff0c;比如…...

Gateway服务网关

Spring Cloud Gateway为微服务架构提供一种简单有效的统一的 API 路由管理方式。Gateway网关是所有微服务的统一入口。网关的核心功能特性&#xff1a;请求路由和负载均衡&#xff1a;一切请求都必须先经过gateway&#xff0c;但网关不处理业务&#xff0c;而是根据某种规则&am…...

K8S + GitLab + Jenkins自动化发布项目实践(一)

K8S GitLab Jenkins自动化发布项目实践&#xff08;一&#xff09;发布流程设计安装Docker服务部署Harbor作为镜像仓库部署GitLab作为代码仓库常用Git命令发布流程设计 #mermaid-svg-pe9VmFytb9GmqMvG {font-family:"trebuchet ms",verdana,arial,sans-serif;font-…...

【数据结构篇C++实现】- 堆

文章目录&#x1f680;一、堆的原理精讲⛳&#xff08;一&#xff09;堆的概念⛳&#xff08;二&#xff09;看图识最大堆⛳&#xff08;三&#xff09;详解堆是用数组表示的树&#x1f680;二、堆的向下调整算法&#x1f680;三、堆的向上调整算法&#x1f680;四、将任意一棵…...

C++笔试题

作用域运算符(::)的作用&#xff1a;1.存在具有相同名称的局部变量时&#xff0c;访问全局变量。2.在类之外定义类相关函数。3.访问类的静态变量。4.在多重继承的情况下&#xff0c;如果两个基类中存在相同的变量名&#xff0c;可以使用作用域运算符来进行区分。5.限定成员函数…...

【Python】基本语法

数据类型 通过 print(type(x)) 可以输出 x 的数据类型&#xff0c;type() 函数可以获取数据类型 整数 a 10 print(type(a)) 浮点数 a 0.5 print(type(a)) 字符串 a hello print(type(a)) 获取字符串长度 a hello print(len(a))字符串拼接 a hello b world prin…...

用栈实现队列(图示超详解哦)

全文目录引言用栈实现队列题目介绍思路简述实现栈的部分队列的部分创建队列判断队列是否为空在队列尾入在队列头出访问队头元素释放队列总结引言 在上一篇文章中&#xff0c;我们了解了用两个队列实现栈。在这篇问章中将继续介绍用两个栈实现队列的OJ练习&#xff1a; 用栈实现…...

Spring - Spring 注解相关面试题总结

文章目录01. Spring 配置方式有几种&#xff1f;02. Spring 如何实现基于xml的配置方式&#xff1f;03. Spring 如何实现基于注解的配置&#xff1f;04. Spring 如何基于注解配置bean的作用范围&#xff1f;05. Spring Component, Controller, Repository, Service 注解有何区别…...

【数据结构】实现二叉树的基本操作

目录 1. 二叉树的基本操作 2. 具体实现 2.1 创建BinaryTree类以及简单创建一棵树 2.2 前序遍历 2.3 中序遍历 2.4 后序遍历 2.5 层序遍历 2.6 获取树中节点的个数 2.7 获取叶子节点的个数 2.8 获取第K层节点的个数 2.9 获取二叉树的高度 2.10 检测值为val的元素是否…...

代码随想录算法训练营第五十二天| ● 300.最长递增子序列 ● 674. 最长连续递增序列 ● 718. 最长重复子数组

300.最长递增子序列 看完题后的思路 dp[i] [0,i]子数组中,以nums[i]结尾的子序列的长度 dp[i]dp[j]1 j从i-1向0遍历,在所有nums[j]<nums[i]中dp[j]最大 初始化 dp[0]1 代码 class Solution {public int lengthOfLIS(int[] nums) {if (nums.length0){return 0;}int[] dpne…...

手机验证发送及其验证(基于springboot+redis)保姆级

在Java开发中&#xff0c;发送手机验证码时需要考虑以下几个问题&#xff1a; 验证码的有效期&#xff1a;验证码应该有一定的有效期&#xff0c;一般设置为几分钟或者十几分钟。过期的验证码应该被认为是无效的&#xff0c;不能用于验证用户身份。手机号码格式的校验&#xf…...

【JavaScript 逆向】数美滑块逆向分析

声明本文章中所有内容仅供学习交流&#xff0c;相关链接做了脱敏处理&#xff0c;若有侵权&#xff0c;请联系我立即删除&#xff01;案例目标验证码&#xff1a;aHR0cHM6Ly93d3cuaXNodW1laS5jb20vbmV3L3Byb2R1Y3QvdHcvY29kZQ以上均做了脱敏处理&#xff0c;Base64 编码及解码方…...

多任务之线程

文章目录一、多任务是什么&#xff1f;二、多任务-线程四、通过继承Tread类完成创建线程五、资源竞争六、同步与互斥锁七、对峙与避免死锁一、多任务是什么&#xff1f; 多个函数同时执行一件事情就是多任务&#xff0c;没有多任务的时候任务执行都是按照顺序的&#xff0c;而…...

(数字图像处理MATLAB+Python)第二章数字图像处理基础-第二节:色度学基础与颜色模型

文章目录一&#xff1a;颜色匹配二&#xff1a;CIE 1931-RGB系统三&#xff1a;CIE 1931标准色度系统四&#xff1a;CIE 1976Lab均匀颜色空间五&#xff1a;孟塞尔表色系统&#xff08;1&#xff09;孟塞尔明度(Value&#xff0c;记为V)&#xff08;2&#xff09;孟塞尔彩度(Ch…...

【华为OD机试 2023最新 】 网上商城优惠活动(C++)

文章目录 题目描述输入描述输出描述备注用例题目解析C++题目描述 某网上商场举办优惠活动,发布了满减、打折、无门槛3种优惠券,分别为: 每满100元优惠10元,无使用数限制,如100199元可以使用1张减10元,200299可使用2张减20元,以此类推;92折券,1次限使用1张,如100元,…...

记一次CentOS 8 部署packstack部署OpenStack失败案例,请直接看最后

首先你需要一台安装好CentOS8 的虚拟机&#xff0c;相关参数如图。两块网卡&#xff0c;网卡1 NAT IP 192.168.100.100 GW192.168.100.2 网卡2 可不做配置。能ping通百度。创建完成虚拟机记得打好快照。 开机编辑基本配置环境变量 [rootlocalhost ~]# nmcli connection show NA…...

【2023春招】美团技术岗笔试10min+AK

随手投递了前端&移动端,笔试2道算法+选择+行测题(为什么笔试会有行测题?) 目录 T1-火车栈结构 题意 输入描述 输出描述 样例 AC_Code T2-春游...

Echarts实现图表自适应屏幕分辨率

一&#xff1a;简介 之前做项目的时候要实现echarts图表随浏览器窗口大小变化而改变&#xff0c;echarts本身提供了一个resize()方法&#xff0c;然后我们需要用一个函数实现浏览器窗口监听&#xff0c;最初我选用的是window.onresize方法&#xff0c;当页面只有一个图表时可以…...

【2023年第十一届泰迪杯数据挖掘挑战赛】B题:产品订单的数据分析与需求预测 建模及python代码详解 问题一

相关链接 【2023年第十一届泰迪杯数据挖掘挑战赛】B题&#xff1a;产品订单的数据分析与需求预测 建模及python代码详解 问题一 【2023年第十一届泰迪杯数据挖掘挑战赛】B题&#xff1a;产品订单的数据分析与需求预测 建模及python代码详解 问题二 1 题目 一&#xff0e;问题…...

【蓝桥杯嵌入式】第十三届蓝桥杯嵌入式国赛客观题以及详细题解

题1 概念题。 USRAT&#xff1a;异步串口通信&#xff0c;常用于数据传输&#xff1b;SW-DP&#xff1a;SWD 的全称应该是 The Serial Wire Debug Port (SW-DP),也就是串行调试端口&#xff0c;是 >ARM 目前支持的两种调试端口之一&#xff1b;JTAG-DP&#xff1a;另一个调试…...

网站404页面源码/seo 重庆

1. 安装yum install asciinema 2. 使用录制 asciinema rec filename(可选&#xff0c;方便进行后期的回放play)同时生成一个url 地址方便传递https://asciinema.org/a/xxxxxxx同时绑定账户之后&#xff0c;可以存储历史的信息 asciinema play filename 3. 参考地址https://a…...

汽车精品设计网站建设/电商怎么做推广

《C语言程序设计》是以实现一个完整的企业项目——学生成绩管理系统为载体展开的&#xff0c;主要实现录入、查询、统计、管理和保存等功能。《C语言程序设计》主要内容包括C语言程序设计概述、C语言编程元素、选择程序设计、循环程序设计、数组程序设计、指针程序设计、函数程…...

最新备案网站查询/在线排名优化工具

跨浏览器的本地存储多种方式&#xff0c;例如&#xff1a;1、localStorage:只支持IE8、FireFox、Chrome、Opera等&#xff0c;不支持IE8以下的浏览器。2、浏览器Cookie&#xff1a;支持的数据存储量相对较少&#xff0c;每个domain最多只能有20条cookie&#xff0c;每个cookie长…...

wordpress 运行时间/优化百度百科

...

和创客贴类似的网站/怎么优化推广自己的网站

文档提要&#xff1a;大数据通常包含三大属性&#xff1a;数量、速度和种类。这些属性给传统的基于磁盘的关系型数据库带来了巨大挑战。不同类型的数据对存储功能和性能有着不同的要求&#xff0c;对应的成本也不同。SAP HANA平台提供了多种数据存储器和处理引擎。现在&#xf…...

wordpress管理员用户名更改/网站seo课设

今天安装了个伪分布式的hadoop。 参考如下文章代码。 https://blog.csdn.net/qq_36561697/article/details/80994405 我用的是vmvare安装&#xff0c;在csdn上找了个15.0版本的安装包,然后上vm官网下载15.3版本更新包&#xff0c;【因为19041版本的win10与之前的vmvare不兼容&…...