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

linux重新学习-纪录篇

前言:

正式学习linux的时候,除了那些命令之外,更多的是对于这个系统的重新认知。

linux的身世?

在上世纪90年代,那时候计算机非常的珍贵,配置也很一般般,系统也贵,所以没啥人用,在当时就已经有系统了叫UNIX系统,这个是linux的前身,由于当时这个系统非常的吃配置,当然了对于当时来说是这样的,据说可以使用UNIX操作系统的机器在当时可以卖到5W美刀,然后到了后面有一个开源大神(这也是开源的最初形成)认为计算机本来就应该是亲民的,我们要实现其普遍性,因此对于UNIX进行了二次开发,形成了最初的Linux版本0.1x,据说当时代码只有仅仅1w行(c语言),编写Linux内核。以Minix操作系统作为参考,但在Minix的基础上进行了丰富的修改和扩展,以创建一个更符合个人计算机需求的内核,通过互联网将Linux发布到公众,并邀请其他开发者参与到项目中。这一开放的发展模式吸引了大量的开发者,他们为Linux做出贡献,改进了内核的功能和性能,Linux最初是作为一个内核开发的项目,但随着时间的推移,它逐渐发展成为一个完整的操作系统。Linux内核与GNU项目中的工具和应用程序结合在一起,形成了一个完整的Linux操作系统。这种结合被称为GNU/Linux,Linux的开源性质使得任何人都可以查看、修改和分发源代码,这也促进了Linux在全球范围内的发展和广泛应用。如今,Linux已成为主流操作系统,广泛应用于服务器、移动设备、嵌入式系统等各个领域,Linux的身世可以概括为一个由Linus Torvalds发起的开源项目,经过全球开发者的不断贡献和改进,最终发展成为一个强大、稳定的操作系统内核,为现代计算机提供了一个开放、灵活和可定制的平台。

linux为什么力压window成为程序员最喜欢的开发平台?

1.开源性

Linux是一个开源操作系统,这意味着人们可以自由查看、修改和分发其源代码。开源性使得程序员可以深入了解内部运行机制,并对系统进行自定义和优化。可以根据自己的需求修改和扩展Linux内核和其他软件,而不受厂商的限制。

2.稳定性.可靠性

Linux在服务器环境中表现出色,以其高度稳定和可靠的特性著称,减少系统崩溃和数据损失的风险。

3.社区支持

Linux拥有庞大而活跃的开源社区,这是它的一个重要优势。开发者可以通过邮件列表、论坛、社交媒体等途径与其他开发者交流和分享经验。可以获得社区的支持和反馈,解决问题和改善开发技巧。开源社区的合作精神也促进了不同开发者之间的合作和共同进步

命令篇:

对于linux而言,我们都知道linux是一个以树为模型而构建的一个文件系统,通过树的父子关系来进行文件的寻址,文件系统是以根目录(/)为起点,通过目录和子目录的层级关系构建而成的。每个目录可以包含文件和其他目录。那么文件对于linux系统来说是非常重要的。

所以对于文件的crud和属性操作是我最先学习的

文本查看命令:

1.cat:一次性加载整个文本文件,也是我之前使用最多的一个查看文本行命令,这个命令有个缺点,就是一次性加载有时候不符合我们查看的要求,所以小文本可以用用,但是当文本内容多了之后就会显得很冗余,当然了与管道符号|和grep和起来用还是可以的,进行筛选。

2.more:缓慢加载,不是一次性加载所有的文本内容,一页一页的加载,可以通过空格键进行控制,但是不能向上翻页看已经看过的内容,对于大文本来说比较常用。

3.less:缓慢加载,和more的大体加载方式是一样的,但是它可以进行向上阅读,向上搜索

4.tail:这个命令我是一般用来查看日志log文件的,最常用的方式tail -f -n 100 xxx.log,用来实时观测这个文件最后100行的内容,用来进行linux日志排错,或者用户行为观测的一些操作,还有一点说明,因为这个tail是根据文件的inode进行观测的,而当文件被vi/vim进行修改的时候,tail是检测不到的,这是因为vi/vim修改文件时会对文件的inode进行修改,所以tail无法观测。

5.head:也是一个观测命令,只不过是动态观测前面n行,和tail恰恰相反,但是一般日志加载都是往后面加,所以这个命令一般用的很少,反正我几乎没用过一次......

文件位置查找命令:

1.find:全盘查找,需要去磁盘加载所有的文件目录才可以进行查找,所以速度很慢,几乎不用

find / -name ***.***          #查找/路径下所有的***.***的位置

2.which:根据系统的PATH路径进行查找,返回系统命令在哪个位置一般在/usr/下,也不建议用

which ***

3.whereis:只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息,从来没用过......

whereis ***

4.locate:这个命令是最常用的命令,而且运行速度也快,因为这个命令的查找是根据数据库(/var/lib/locatedb)索引进行查找的,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

locate ***

查看历史命令:

history:

这个命令很厉害,可以查看你历史所有使用过的命令,前提是你不进行历史命令清除,直接输入就可以看到,也可以加入一些参数进行部分命令查看,例如查看带有cd的执行命令,或者查看最后100行执行的命令,根据这个我们可以使用!+id号就可以直接使用我们之前用过的命令,!之后跟的负数表示倒数取命令,目前我用到的就这么多

用户权限命令:

1.su:切换用户命令,从权限大-权限小不需要密码,反之则需要密码,切换之后的PATH环境是不会发生变化的,可以利用who am i/whoami来进行验证

2.sudo:暂时获取root权限的一个命令,类似于这样sudo cat xxx.log,当普通用户没有权限进行观测时,可以用sudo进行权限提升,但这也仅仅是当前命令行的提升,使用过后就没有了。

上面两个命令我也几乎没有过[笑哭],因为我一直都是用root登录操作的......

3.whoami:显示自身的用户名称,本指令相当于执行"id -un"指令。

文件的CRUD命令:

1.mkdir:创建文件命令,加-r可以递归创建,

相关文章:

linux重新学习-纪录篇

前言: 正式学习linux的时候,除了那些命令之外,更多的是对于这个系统的重新认知。 linux的身世? 在上世纪90年代,那时候计算机非常的珍贵,配置也很一般般,系统也贵,所以没啥人用,在当…...

为机器人装“大脑” 谷歌发布RT-2大模型

大语言模型不仅能让应用变得更智能,还将让机器人学会举一反三。在谷歌发布RT-1大模型仅半年后,专用于机器人的RT-2大模型于近期面世,它能让机器人学习互联网上的文本和图像,并具备逻辑推理能力。 该模型为机器人智能带来显著升级…...

JavaEE 面试常见问题

一、常见的 ORM 框架有哪些? 1.Mybatis Mybatis 是一种典型的半自动的 ORM 框架,所谓的半自动,是因为还需要手动的写 SQL 语句,再由框架根据 SQL 及 传入数据来组装为要执行的 SQL 。其优点为: 1. 因为由程序员…...

06 HTTP(下)

06 HTTP(下) 介绍服务器如何响应请求报文,并将该报文发送给浏览器端。介绍一些基础API,然后结合流程图和代码对服务器响应请求报文进行详解。 基础API部分,介绍stat、mmap、iovec、writev。 流程图部分,描…...

clickhouse调研报告2

由Distributed表发送分片数据 clickhouse分区目录合并 clickhouse副本协同流程 clickhouse索引查询逻辑 clickhouse一级索引生成逻辑(两主键) clickhouse的data目录下包含如下目录: [root@brfs-stress-01 201403_10_10_0]# ll /data01/clickhouse/data total 4 drwxr-x---…...

TensorRT学习笔记--基于TensorRT部署YoloV3, YoloV5和YoloV8

目录 1--完整项目 2--模型转换 3--编译项目 4--序列化模型 5--推理测试 1--完整项目 以下以 YoloV8 为例进行图片和视频的推理,完整项目地址如下:https://github.com/liujf69/TensorRT-Demo git clone https://github.com/liujf69/TensorRT-Demo.…...

原型链污染,nodejs逃逸例子

文章目录 原型链污染原型链污染原理原型链污染小例子 原型链污染题目解析第一题第二题 Nodejs沙箱逃逸方法一方法二 原型链污染 原型链污染原理 原型链 function test(){this.a test; } b new test;可以看到b在实例化为test对象以后,就可以输出test类中的属性a…...

nlohmann::json 中文乱码解决方案

// UTF8字符串转成GBK字符串 std::string U2G(const std::string& utf8) {int nwLen MultiByteToWideChar(CP_UTF8, 0, utf8.c_str(), -1, NULL, 0);wchar_t* pwBuf new wchar_t[nwLen 1];//加1用于截断字符串 memset(pwBuf, 0, nwLen * 2 2);MultiByteToWideChar(CP_U…...

IDEA中maven项目失效,pom.xml文件橙色/橘色

IDEA中maven项目失效,pom.xml文件橙色/橘色 IDEA中Maven项目失效 IDEA中创建的maven项目中的文件夹都变成普通格式,pom.xml变成橙色 右键点击橙色的pom.xml文件,选择add as maven project maven项目开始重新导入相应依赖,恢复…...

【雕爷学编程】MicroPython动手做(28)——物联网之Yeelight 2

知识点:什么是掌控板? 掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片,支持WiFi和蓝牙双模通信,可作为物联网节点,实现物联网应用。同时掌控板上集成了OLED…...

IntelliJ IDEA 2023.2社区版插件汇总

参考插件帝:https://gitee.com/zhengqingya/java-developer-document 突发小技巧:使用插件时要注意插件的版本兼容性,并根据自己的实际需求选择合适的插件。同时,不要过度依赖插件,保持简洁和高效的开发环境才是最重要…...

Sheel编写关于mysqldump实现分库分表备份

编写脚本,使用mysqldump实现分库分表备份。 #编辑脚本文件 [rootlocalhost scripts]# vim bak_tb1.sh#脚本内容: #设置变量,减少代码冗余 mysql_cmd-uroot -p123 exclude_dbDatabase|information_schema|-S|mysql|performance_schema|sys ba…...

Rust的入门篇(上)

Rust的入门篇(上) 最近跟着菜鸟一起入门了比较火的Rust语言,下面整理一下学习的笔记吧。 1. Helloworld程序 fn main(){println!("hello rust") }2. 格式化字符串 fn main(){let a 12;// 格式化字符串println!("a{}", a);println!("a…...

数字滚动变化-指令形式

话不多说&#xff0c;直接上代码 <template><divv-data-scroll"{target: 100speed: 1000}">100</div> </template><script setup lang"ts"> import { DirectiveBinding } from vue;function dataScroll(el: HTMLElement, …...

LNMP搭建及论坛搭建

一、LNMP LNMP架构是目前成熟的企业网站应用模式之一&#xff0c;指的是协同工作的一整套系统和相关软件&#xff0c; 能够提供动态Web站点服务及其应用开发环境。LNMP是一个缩写词&#xff0c;具体包括Linux操作系统、nginx网站服务器、MySQL数据库服务器、PHP&#xff08;或…...

小程序商品如何开启秒杀?

在小程序中&#xff0c;开启秒杀活动可以有效地吸引用户的注意力&#xff0c;提升销售额。下面就让我们来看看小程序商品怎么开启秒杀功能吧。 首先&#xff0c;确定秒杀活动的商品。一般来说&#xff0c;我们可以选择一些库存较多的商品或者是需要清理库存的商品作为秒杀商品…...

vue 标题文字字数过长超出部分用...代替 动态显示

效果: 浏览器最大化: 浏览器缩小: 代码: html: <div class"title overflow">{{item.name}}</div> <div class"content overflow">{{item.content}}</div> css: .overflow {/* 一定要加宽度 */width: 90%;/* 文字的大小 */he…...

DAY2,C高级(shell脚本的使用)

1.今日思维导图&#xff1b; 2.递归实现&#xff0c;输入一个数&#xff0c;输出这个数的每一位&#xff1b; #include<my_head.h>void Output(int num) {if(num 0)return;Output(num/10);printf("%d ",num%10);}int main(int argc, const char *argv[]) {in…...

maven中的properties标签

在maven构建项目的时候经常遇到如下所示的标签配置&#xff1a; <dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId> <version>4.2.6</version></dependency><dependency><gr…...

[openCV]基于拟合中线的智能车巡线方案V2

import cv2 as cv import os import numpy as np# 遍历文件夹函数 def getFileList(dir, Filelist, extNone):"""获取文件夹及其子文件夹中文件列表输入 dir&#xff1a;文件夹根目录输入 ext: 扩展名返回&#xff1a; 文件路径列表"""newDir d…...

无机布防火卷帘门报价透明,包工包料,一次说清所有费用

很多客户在选购无机布防火卷帘门时&#xff0c;最关心实际成交价格&#xff0c;也担心报价不清晰&#xff0c;后期产生各类额外支出。行业内产品定价参差不齐&#xff0c;选材做工不同&#xff0c;最终价位自然存在差距&#xff0c;挑选时不能只看表面低价。 &#x1f449; 点击…...

告别虚频困扰:用VASP+DynaPhoPy搞定高温材料声子谱的保姆级教程

高温材料声子谱计算实战&#xff1a;从虚频困境到非谐解决方案 引言&#xff1a;虚频问题的根源与突破路径 在计算材料学领域&#xff0c;声子谱分析是理解材料动力学稳定性和热力学性质的核心手段。然而许多研究者都遭遇过这样的困境&#xff1a;对实验合成的材料进行简谐近似…...

如何高效批量下载音乐歌词:智能歌词管理完整指南

如何高效批量下载音乐歌词&#xff1a;智能歌词管理完整指南 【免费下载链接】ZonyLrcToolsX ZonyLrcToolsX 是一个能够方便地下载歌词的小软件。 项目地址: https://gitcode.com/gh_mirrors/zo/ZonyLrcToolsX ZonyLrcToolsX 是一款专业的跨平台歌词下载工具&#xff0c…...

1688运营培训/询盘成本从500元降到63.9!1688运营培训还原1688真实玩法

1688运营培训/询盘成本从500元降到63.9&#xff01;1688运营培训还原1688真实玩法500块钱一个询盘&#xff0c;你敢信&#xff1f;做1688运营培训这么多年&#xff0c;这个数字我都觉得离谱。前阵子遇到一个老板&#xff0c;一上来就开始吐槽1688&#xff0c;说1688就是个垃圾平…...

观察不同模型在统一 API 下的响应速度与输出风格差异

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 观察不同模型在统一 API 下的响应速度与输出风格差异 在为大语言模型应用选择模型时&#xff0c;开发者通常会关注两个核心维度&am…...

为什么你的Midjourney雾效总像“水汽”而非“山岚”?——资深CG总监拆解大气散射物理模型在--v 6.1中的3层映射偏差

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;为什么你的Midjourney雾效总像“水汽”而非“山岚”&#xff1f; Midjourney 生成的雾气常呈现为均匀、半透明、边界模糊的“水汽感”——厚重、潮湿、缺乏层次与呼吸感。这并非模型能力不足&#xff0c;而是提…...

Lovable内部工具开发方法论(从需求黑洞到用户自发推广的完整闭环)

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;Lovable内部工具开发方法论&#xff08;从需求黑洞到用户自发推广的完整闭环&#xff09; Lovable 方法论的核心不是交付功能&#xff0c;而是培育“工具依赖感”——当一线工程师在凌晨三点调试线上问题时&am…...

<数据集>yolo高粱叶片病害识别<目标检测>

数据集下载链接https://download.csdn.net/download/qq_53332949/92902223数据集格式&#xff1a;VOCYOLO格式 图片数量&#xff1a;3242张 标注数量(xml文件个数)&#xff1a;3242 标注数量(txt文件个数)&#xff1a;3242 标注类别数&#xff1a;1 使用标注工具&#xff…...

yEd画流程图保姆级避坑指南:从界面解析到高效导出PNG/JPG全流程

yEd流程图高效绘制全攻略&#xff1a;从界面优化到专业导出的进阶技巧第一次打开yEd时&#xff0c;那个布满各种面板和参数的界面确实容易让人望而生畏。但别担心&#xff0c;经过几个月的深度使用&#xff0c;我发现这款工具其实隐藏着许多能极大提升效率的设计细节。本文将带…...

UE5 UMG界面开发避坑指南:WidgetComponent的ZOrder和图层管理到底怎么用?

UE5 UMG界面开发避坑指南&#xff1a;WidgetComponent的ZOrder和图层管理实战解析在虚幻引擎5的UMG界面开发中&#xff0c;WidgetComponent的渲染层级管理是一个看似简单却暗藏玄机的技术点。许多开发者在处理复杂UI系统时&#xff0c;常常会遇到控件遮挡混乱、图层顺序失控的问…...