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

linux学习总结

shell

1.在文本环境下,shell作为命令解释器,建立了用户和操作系统之间的接口。当用户键入一个命令时,shell将对该命令进行解释,并调用相应的程序。2.Linux下有多个shell,最常用的3个shell: bash   tcsh   zsh3.shell 脚本:shell除了具有解释键盘命令并将其发送到操作系统的功能外,shell命令可以安排在一个文件中供以后执行,这些文件在linux系统称为shell脚本。

4.进程间的通信

4.1 管道和过滤器管道:将一个程序的输出作为另一个程序的输入。过滤器:作为管道的一种特殊的形式,对输入数据流进行处理得到输出数据流。过滤器可以对程序的输出进行修改,过滤器的输出可以作为另一个程序的输入。

5.主分区、扩展分区、逻辑分区

5.1 一个磁盘至多可以有4个主分区,每个主分区还可以划分多个逻辑分区,把被划分的主分区称为扩展分区。
5.2 典型的分区是将磁盘划分为3个主分区和1个扩展分区,3个主分区的大小即你所希望的最终分区的大小,1个扩展分区占用剩余的磁盘空间。

6.磁盘分区

向导分区:直接将硬盘划分为两个分区:交换分区,此分区的 大小是512MB或2GB等和/(根)分区,此分区占用硬盘的剩余空间。
分区建议:必须有一个/根分区,建议再设置一个交换分区。可以创建额外的分区/挂载点组合,对任何没有创建专门的分区/挂载点的标准目录,会自动成为根目录/的子目录,并位于根/分区下。
swap:当linux没有足够的内存保存它正在处理的所有信息时,linux就会将程序和数据临时存放在交换分区上。
/boot:此分区存放内核和系统启动时所需的其他数据。建议将/boot分区的大小设置为100MB
/var:存放大量的系统日志、软件包信息、记账数据,最好将其作为一个独立的分区。
/home: 将用户的主目录存放在单独的磁盘或分区中

7.基本实用工具

ls: 列出文件名   ls  文件名
cat:显示文本文件内容  cat 文件名     
rm:删除文件(确保要删除的文件是自己想要删除的文件)
(推荐此写法)比较安全的文件删除方式:rm -i 文件名
less/more: 分屏显示文本文件    less/more   文件名(当要浏览的文件内容超过一屏时)
man:  显示系统手册   man  5  passwd   查看第5页
info: 显示实用工具的相关信息     如:info  coreutils
选项 --help: 显示帮助信息
hostname: 显示系统名

8.文件操作

cp:复制文件    cp  源文件   目标文件
当目标文件已经存在时,cp指令可能会覆盖文件,推荐写法:  cp -i 源文件  目标文件mv:重命名文件名   mv  原有的文件名   新的文件名lpr:打印文件            lpr 文件名grep:查找字符串     grep   '要查找的字符串'   目标文件名head:  显示文件的头部      head  -1  目标文件名tail:  显示文件的尾部      tail  -3 目标文件名   sort: 按顺序显示文件内容  sort  文件名uniq:删除文件中重复的行, 对那些连续的重复行只显示一行,但原内容没有变化diff: 比较两个文件,显示两个文件的不同之处   diff  -u  文件1  文件2file: 在不通过打开文件情况下,测试文件内容 

9.管道| 实现进程间的通信

管道将一个进程的标准输出重定向为另一个进程的标准输入。
进程显示的内容一般都要发送到标准输出,如果没有重定向,
此输出就会显示在屏幕上。 ls  |  wc  -w  显示某个文件目录下的文件个数

10. 4个有用的实用工具

echo:  显示文本,可以复制其后跟的任何内容,并显示在屏幕上。
echo   hello world
echo   this is a sentence
echo   star:  *   注:显示目录下的所有文件列表

11. date: 显示日期和时间

date
date  +"%A  %B  %d"

12.unix2dos:

将linux文件转为windows格式
unix2dos  文件名

13.压缩和归档文件

1.bzip2:压缩文件bzip2 -v 文件名
2.bunzip2解压文件bunzip2  文件名
3. bzcat  xxxxx.bz2  专门显示以.bz2为扩展名的压缩文件#####1.tar打包归档文件tar可以将多个文件或多个目录归档成一个tar文件
将src.txt   src_rename.txt文件进行归档,成为一个文件all.tar
用法:tar  -cvf  all.tar  src.txt  src_rename.txt
查看归档文件信息: ls  -l  all.tar
以表格的形式显示归档文件中的2个文件: tar  -tvf  all.tar
解压归档文件:tar  -xvf  all.tar

14.定位命令

1.定位实用工具which  whereis----------
只能报告在磁盘上搜索到的命令,不能搜索shell中的内置命令信息。例如:which  tar(显示实用工具的完整路径来定位该实用工具)    例如:whereis  tar(搜索与实用工具相关的文件)
2.判断一个命令是否是内置命令type   命令名
3.apropos:搜索关键字例如: apropos  who    等价于  man  -k  whowhatis  who: 仅搜索与关键字完全匹配的信息

15.获取用户信息和系统信息

who:列出系统上的用户   who    who  -u
finger:  列出系统上的用户   finger      finger  cdl
w: 列出系统上的用户    w

16.linux文件系统

1.以句点.开头的文件名叫做隐藏文件名: ls  -a可以显示所有文件
2.当前目录/工作目录:在某个目录下进行操作的目录,pwd可以显示当前的工作目录路径,工作目录随时变化
3.主目录: pwd   可以显示/home/cdl,主目录不会变化。4.路径名4.1 绝对路径名:均以/开头,/是根目录的文件名,从根目录开始,经过所有中间目录到达一个文件,通过这个路径,就能建立这个文件的绝对路径。如/home/cdl/linux_tutorials/src4.2 路径名中的代字符~shell将代字符后跟/,放置在路径名的开始,表示主目录的路径名。代字符可以快速引用以任何用户的主目录开头的路径。4.3 相对路径名:从工作目录到文件的路径名,该路径名是相对于工作目录的。不以/或者~开始的路径名都是相对路径名。5.目录命令5.1 mkdir:创建目录mkdir  文件目录1mkdir  -p  文件目录1  文件目录2  在文件目录1下创建文件目录25.2 目录项 . 和 ...代表工作目录的路径名,..代表工作目录的父目录路径名ls  ..   			cp  src.txt  ..
6.目录操作6.1 rmdir:删除空的目录 rmdir ~/linux_tutorials/srcrm  -r  文件名  递归的删除目录下的所有文件(谨慎使用)6.2 使用路径名touch  hicd ~/linux_tutorials/cp  hi  ~/linux_tutorials/src/hi_new   将hi文件复制到src目录下,并重命名为hi_new	6.3  mv/cp:移动和复制文件mv:可以移动文件和重命名文件的名字mv  ~/linux_tutorials/src/hi_new  ~/linux_tutorials/6.4 访问权限访问文件的用户有3种类型:文件所有者owner、文件所有者所在组的成员用户group、其他用户otherls  -l:显示访问权限,如: ls  -l  src.txt-rwxrw-r-x+  3  cdl  dana    2048  Aug 12  14:19  src.txt(各项解释如下)- :文件类型(-代表普通文件,d代表目录文件,l表示链接文件)rwxrw-r-x: 这9个字符为文件的(文件所有者、组成员用户、其他用户)访问权限(r代表可读,w代表可写,x:代表可执行,如果出现-则代表文件所有者在那个位置没有相对应的权限)3:指向该文件的链接数量cdl: 文件所有者的名字dana: 对文件具有组访问权限的组的名称2048:文件的大小Aug 12  14:19 :文件创建或最后一次修改时间src.txt: 文件名称chmod: 改变访问权限给所有的用户都增加读写权限 : chmod a+rw  src.txt给其他用户都删除读写权限 : chmod o-rw  src.txtps: a代表所有用户,u代表文件所有者,g代表组用户,o代表其他用户owner = rwx = 4+2+1 = 7  group = rwx = 4+2+1 = 7  others= --- = 0+0+0 = 0改变访问权限   chmod  777  src.txt对shell脚本文件赋予可执行权限的前提是要有读权限目录的访问权限查看src目录的访问权限:  ls  -ld    ~/llinux_tutorials/src6.5 链接链接表示执行文件的指针,当使用vim、touch、cp或其他方式创建文件时,对应目录下便会产生一个指向该文件的指针。此指针将文件名和磁盘的某个位置建立关联,文件指针指向存放此文件的磁盘位置。linux中的硬链接与软链接在linux系统中有种文件是链接文件,可以为解决文件的共享使用。链接的方式可以分为两种,一种是硬链接(Hard Link),另一种是软链接或者也称为符号链接(Symbolic Link)。硬链接: 硬链接是指通过索引节点来进行链接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都会给它分配一个编号,这个编号被称为索引节点编号号(Inode Index)或者Inode,它是文件或者目录在一个文件系统中的唯一标识,文件的实际数据放置在数据区域(data block),它存储着文件重要参数信息,也就是元数据 (metadata),比如创建时间、修改时间、文件大小、属主、归属的用户组、读写权限、数据所在block号等 。在Linux系统中,多个文件名指向同一索引节点(Inode)是正常且允许的。一般这种链接就称为硬链接。硬链接的作用之一是允许一个文件拥有多个有效路径名,这样用户就可以建立硬链接到重要的文件,以防止“误删”源数据(很多硬件,如netapp存储中的快照功能就应用了这个原理,增加一个快照就多了一个硬链接》。不过硬链接只能在同一文件系统中的文件之间进行链接,不能对目录进行创建。之所以文件建立了硬链接就会防止数据误删,是因为文件系统的原理是,只要文件的索引节点还有一个以上的链接(仅删除了该文件的指向),只删除其中一个链接并不影响索引节点本身和其他的链接(数据的实体并未删除),只有当最后一个链接被删除后,此时如果有新数据要存储到磁盘上,被删除的文件的数据块及目录的链接才会被释放,空间被新数据暂用覆盖。软链接: 软链接(也叫符号链接),类似于windows系统中的快捷方式,与硬链接不同,软链接就是一个普通文件,只是数据块内容有点特殊,文件用户数据块中存放的内容是另一文件的路径名的指向,通过这个方式可以快速定位到软连接所指向的源文件实体。软链接可对文件或目录创建。软链接作用:便于文件的管理,比如把一个复杂路径下的文件链接到一个简单路径下方便用户访问。节省空间解决空间不足问题,某个文件文件系统空间已经用完了,但是现在必须在该文件系统下创建一个新的目录并存储大量的文件,那么可以把另一个剩余空间较多的文件系统中的目录链接到该文件系统中。删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接就变成了死链接。软连接和硬链接的特点:软链接:1.软链接是存放另一个文件的路径的形式存在。2.软链接可以 跨文件系统 ,硬链接不可以。3.软链接可以对一个不存在的文件名进行链接,硬链接必须要有源文件。4.软链接可以对目录进行链接。硬链接:1. 硬链接,以文件副本的形式存在。但不占用实际空间。2. 不允许给目录创建硬链接。3. 硬链接只有在同一个文件系统中才能创建。4. 删除其中一个硬链接文件并不影响其他有相同 inode 号的文件。创建硬链接ln:cd  linux_tutorials/srctouch  fileAln   fileA  fileA_hard_link       在默认不带参数情况下,ln命令创建的是硬链接。ls  -l创建软链接:ln  -s  fileA  fileA_soft_link   创建软链接用s参数 符号ls  -l硬链接有着相同 inode 号仅文件名不同的文件,用ls  -li命令查看8835 -rw-rw-r-- 2 cdl cdl     0 10月 31 16:41 fileA8835 -rw-rw-r-- 2 cdl cdl     0 10月 31 16:41 fileA_hard_link8836 lrwxrwxrwx 1 cdl cdl     5 10月 31 16:47 fileA_soft_link -> fileA上面源文件和硬链接文件inode号相同 (第一列就是inode号),指向同一个索引节点。软链接是一个链接文件,文件模式那块前面有个l字母,表示是个链接文件。硬链接不能指向目录,但是软链接可以cd ~/linux_tutorials/ln  src  fileA      不允许将硬链接指向目录srcln  -s  src fileA  允许将软链接指向目录src删除源文件后,两种情况对比echo  'this is a file'  >  fileA     向文件中写入数据cat  fileA    查看文件内容cat fileA_soft_link  fileA_hard_link    查看软链接和硬链接文件内容一致rm  -f  fileA  删除源文件ls   -li8831 -rw-rw-r-- 1 cdl cdl    22 10月 29 15:49 src_rename.txt8830 -rw-rw-r-- 1 cdl cdl 10240 10月 30 14:54 src.txt8829 -rw-rw-r-- 1 cdl cdl 20480 10月 30 14:56 all.tar8833 -rwxrwxr-x 1 cdl cdl     0 10月 30 16:19 hi8836 lrwxrwxrwx 1 cdl cdl     5 10月 31 16:47 fileA_soft_link -> fileA8835 -rw-rw-r-- 1 cdl cdl    15 10月 31 16:55 fileA_hard_link硬链接文件存在 内容和源文件内容一样,虽然删除源文件,但仍然有硬链接指向源文件inode节点,所以不会被释放删除,这里只是删除fileA到inode节点的链接。cat fileA_soft_link   软链接文件已经不存在了,目录还会显示这个文件,就是软链接文件已经失效。删除软链接rm -f fileA_soft_link   直接删除这个软链接文件即可

相关文章:

linux学习总结

shell 1.在文本环境下,shell作为命令解释器,建立了用户和操作系统之间的接口。当用户键入一个命令时,shell将对该命令进行解释,并调用相应的程序。2.Linux下有多个shell,最常用的3个shell: bash tcsh zsh3.shell …...

【API 管理】什么是 API 管理,为什么它很重要?

当今复杂的数字生态系统由许多相互关联的部分组成。API 作为看门人和连接器在其中发挥着关键作用——提供了许多最终用户甚至没有注意到的自动化机会和效率。 企业密切关注 API。它们对于应用程序、数据和各种客户交互的功能至关重要。 这使得 API 管理成为几乎每个部门的组织…...

基于人体呼出气体的电子鼻系统的设计与实现

基于人体呼出气体的电子鼻系统的设计与实现 摘要 电子鼻技术是通过模式识别技术对传感器采集的人体呼出气体进行分类训练的方法。本文研究实现的电子鼻系统包括下面几个部分:首先搭建以Arduino为控制核心的气路采集装置,包括MOS传感器和双阀储气袋构建的传感器阵列和…...

OPC发展历程

目录 1 opc 发展历程 1.1 OPC产生的背景 1.2 经典OPC 1.3 OPC UA 2 OPC DA简介 2.1 OPC Server/Client 2.2 OPC Server 2.3 OPC数据更新 2.4 读取数据方式 3 OPC XML简介 3.1 诞生由来 3.2 功能服务 1 opc 发展历程 OPC是英文“OLE for Process Control”的缩写&am…...

第69步 时间序列建模实战:ARIMA建模(R)

基于WIN10的64位系统演示 一、写在前面 这一期,我们使用R进行SARIMA模型的构建。 同样,这里使用这个数据: 《PLoS One》2015年一篇题目为《Comparison of Two Hybrid Models for Forecasting the Incidence of Hemorrhagic Fever with Re…...

【多线程】CountDownLatch

CountDownLatch 同时等待 N 个任务执行结束. 好像跑步比赛,10个选手进行比赛, 所有选手都通过终点,才能公布成绩。 代码示例: 构造 CountDownLatch 实例, 初始化 10 表示有 10 个任务需要完成.每个任务执行完毕, 都调用 latch.countDown() . 在 Count…...

使用 docker buildx 构建跨平台镜像 (QEMU/buildx/build)

目录 1. 使用 buildx 构建跨平台镜像1.1. 简介1.2. 安装1.3. 构建跨平台镜像1.4. 跨平台镜像构建策略1.4.1. 在内核中使用 QEMU 仿真支持1.4.2. 使用相同的构建器实例在多个本机节点上构建。1.4.3. 使用 Dockerfile 中的多阶段构建, 交叉编译到不同的平台架构中。 1.5. 创建 bu…...

算法|Day49 动态规划17

LeetCode 647- 回文子串 题目链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 题目描述:给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子…...

Linux nohup命令

nohup命令 no hang up 在后台启动命令,终端关闭 程序依然可以执行 1.在后台启动命令 命令 nohup COMMAND2.使用nohup命令在后台启动COMMAND, 并将所有标准输出都重定向到fileA nohup COMMAND > /path/fileA 2>&1 &# COMMAND 需要运行的命令 # &g…...

SQL Server 跨库/服务器查询

这里写目录标题 1 SQL Server 跨库/服务器查询1.1 跨库查询1.2 跨服务器查询1.2.1 创建链接服务器1.2.2 跨库查询 1.3 拓展:SQL Server 中所有权和用户与架构的分离 1 SQL Server 跨库/服务器查询 1.1 跨库查询 在同一服务器下的跨库查询较为简单,示例…...

word转PDF文件变小,图片模糊

word论文29M,文件——另存为——只有1.5M左右,图片压缩严重,图片看不清。 word中很多大图,5M一张的图,所以word很大。 找了很多方法,转换后都在2M左右,勉强可以。 直到找到了这个&#xff0c…...

被删除并且被回收站清空的文件如何找回

文件的意外删除和回收站清空是许多用户面临的普遍问题。这种情况下,很多人会感到无助和焦虑,担心自己的重要文件永远丢失。然而,幸运的是,依然存在一些有效的方法能够帮助我们找回被删除并且被回收站清空的文件。 ▌被删除文件在…...

每日两题 131分割回文串 784字母大小写全排列(子集模版)

131 131 题目 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1: 输入:s “aab” 输出:[[“a”,“a”,“b”]…...

Java面试八股文宝典:初识数据结构-数组的应用扩展之HashMap

前言 除了基本的数组,还有其他高级的数据结构,用于更复杂的数据存储和检索需求。其中,HashMap 是 Java 集合框架中的一部分,用于存储键值对(key-value pairs)。HashMap 允许我们通过键来快速查找和检索值&…...

ES6 特性

一、ES6 1.1 ES6 概念 1.1.1 什么是 ES ES 全称 EcmaScript 是脚本语言的规范JavaScript 是 EcmaScript 的一种实现ES 新特性就是指 JavaScript 的新特性 1.1.2 为什么要使用 ES 语法简单,功能丰富框架开发应用前端开发职位要求 1.1.3 为什么要学习 ES6 ES6 …...

重拾html5

新增的position: sticky; 基于用户的滚动位置来定位,粘性定位的元素是依赖于用户的滚动,在 position:relative 与 position:fixed 定位之间切换。ie15以上的低版本不支持,Safari 需要使用 -webkit- prefix; vertical-align: midd…...

递归学习——记忆化搜索

目录 ​编辑 一,概念和效果 二,题目 1.斐波那契数 1.题目 2.题目接口 3.解题思路 2.不同的路径 1.题目 2.题目接口 3.解题思路 3.最长增长子序列 1.题目 2.题目接口 3.解题思路 4.猜数字游戏II 1.题目 2.题目接口 3.解题思路 总结&a…...

ChatGPT帮助一名儿童确诊病因,之前17位医生无法确诊

9月13日,Today消息,一位名叫Alex的4岁儿童得了一种浑身疼痛的怪病,每天需要服用Motrin(美林)才能止痛。3年的时间,看了17名医生无法确诊病因。(新闻地址:https://www.today.com/heal…...

Laf 云开发平台及其实现原理

Laf 产品介绍 自我介绍 大家好,我是来自 Laf 团队的王子俊,很高兴今天能在这里给大家分享我们 Laf 云开发平台及其实现原理。本来想说一点什么天气之类的话作为开头,但主持人都说完啦,我就不多说了,还是直接开始今天…...

浅谈STL|STL函数对象篇

一.函数对象概念 概念: 重载函数调用操作符的类,其对象常称为函数对象 函数对象使用重载的()时,行为类似函数调用,也叫仿函数 本质: 函数对象(仿函数)是一个类,不是一个函数 特点 函数对象在使用时,可以像普通函数那…...

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

HTML 语义化

目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案&#xff1a; 语义化标签&#xff1a; <header>&#xff1a;页头<nav>&#xff1a;导航<main>&#xff1a;主要内容<article>&#x…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例&#xff1a;使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例&#xff1a;使用OpenAI GPT-3进…...

vscode(仍待补充)

写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh&#xff1f; debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

django filter 统计数量 按属性去重

在Django中&#xff0c;如果你想要根据某个属性对查询集进行去重并统计数量&#xff0c;你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求&#xff1a; 方法1&#xff1a;使用annotate()和Count 假设你有一个模型Item&#xff0c;并且你想…...

质量体系的重要

质量体系是为确保产品、服务或过程质量满足规定要求&#xff0c;由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面&#xff1a; &#x1f3db;️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限&#xff0c;形成层级清晰的管理网络&#xf…...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

【HTML-16】深入理解HTML中的块元素与行内元素

HTML元素根据其显示特性可以分为两大类&#xff1a;块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

自然语言处理——Transformer

自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效&#xff0c;它能挖掘数据中的时序信息以及语义信息&#xff0c;但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN&#xff0c;但是…...