《鸟哥的Linux私房菜基础篇》---1 Linux的介绍与如何开启Linux之路

目录

一、Linux的简单介绍

1、Linux的简介

2、Linux的起源与发展

3、主要特点

4、应用场景

二、开启Linux之路

1、学习Linux的相关知识

2、正规表示法、管线命令、数据流重导向


前言

        整体大纲预览

一、Linux的简单介绍

1、Linux的简介

(1)Linux就是一套操作系统,Linux就是核心与系统呼叫接口那两层。

(2)Linux是Open Source的操作系统,所以Linux是具有【可移植性】。

软件移植: 如果能够参考硬件的功能函数并据以修改你的操作系统程序代码,那经过改版后的操作系统在另一个硬件平台上面运行了,这个动作通常称为【软件移植】。

2、Linux的起源与发展

(1)Linux起源于上世纪90年代初,由芬兰的林纳斯·托瓦兹(Linus Torvalds)开发。

(2)他最初发布了一个用于个人计算机的内核,即操作系统的主要核心,被命名为Linux。

(3)Linux不断更新迭代,拥有庞大的开发者社区,现已成为全球最受欢迎的开源操作系统之一。

3、主要特点

(1)开放性:Linux遵循开放系统互连(OSI)国际标准,其源代码是公开的,任何人都可以查看、修改和发布。

(2)多用户:Linux操作系统资源可以被不同用户使用,每个用户对自己的资源(例如文件、设备)有特定的权限,互不影响。

(3)多任务:Linux允许计算机同时执行多个程序,同时各个程序的运行互相独立。

(4)良好的用户界面:Linux向用户提供了两种界面,即用户界面和系统调用,同时还提供了图形用户界面(GUI),利用鼠标、菜单、窗口、滚动条等设施,给用户呈现一个直观、易操作、交互性强的友好的图形化界面。

(5)设备独立性:Linux是具有设备独立性的操作系统,其内核具有高度适应能力,操作系统把所有外部设备统一当作文件来看待,只要安装驱动程序,任何用户都可以像使用文件一样操纵、使用这些设备。

(6)丰富的网络功能:Linux提供了完善的内置网络功能。

(7)可靠的安全系统:Linux采取了许多安全技术措施,包括对读、写控制、带保护的子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。

(8)良好的可移植性:Linux能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。

4、应用场景

(1)服务器操作系统:Linux被广泛用作服务器操作系统,包括Web服务器、数据库服务器、文件服务器等。

(2)嵌入式系统:Linux适用于嵌入式设备,如智能手机、平板电脑、网络路由器、电视盒子等。

(3)超级计算机:Linux在高性能计算领域得到广泛应用,能够支持大规模并行计算。

(4)云计算和虚拟化:Linux是云计算平台的主力操作系统,能够提供高度可扩展的虚拟化环境。

(5)科学研究:Linux在科学研究领域得到广泛应用,包括天文学、地球物理学、生物医学等。

(6)软件开发:Linux提供了丰富的开发工具和环境,广泛用于软件开发和系统管理。

(7)家庭用户:Linux也适用于家庭用户,可以用作个人电脑的操作系统,提供各种办公、娱乐和互联网应用。

(8)教育领域:Linux在学校和大学中得到广泛应用,用于教学、科研和学生使用。

二、开启Linux之路

1、学习Linux的相关知识

(1)计算机概论与硬件相关知识;

(2)先从Linux的安装与指令学起;

(3)Linux操作系统的基本技能:
        【使用者、群组的概念】、【权限的观念】、【程序的定义】等等

(4)务必学会vi文字编辑;

(5)Shell与Shell Script的学习;

        【正规表示法】、【管线命令】、【数据流重导向】

(6)一定要会软件管理员;
        面临自己安装驱动程序或者安装额外软件的时候,Tarball/RPM/DPKG等软件管理员的安装方式的了解。

(7)网络基础的建立;

学习书籍参考:

计算机基础(http://www.study-area.org/compu/compu.htm)
网络基础(http://www.study-area.org/network/network.htm)
鸟哥的私房菜馆:http://linux.vbird.org

2、正规表示法、管线命令、数据流重导向

在Linux系统中,有几个重要的概念对于高效地进行文本处理和系统管理至关重要,这些概念包括正规表示法(Regular Expressions,简称Regex)、管线命令(Pipeline Commands)以及数据流重导向(Data Redirection)。

(1) 正规表示法(Regular Expressions)

        正规表示法是一种用于文本搜索、替换和解析的强大工具。它允许用户定义一个模式(pattern),然后利用这个模式去匹配文本中的字符串。这个模式可以非常具体(例如,只匹配一个特定的单词),也可以非常广泛(例如,匹配所有电子邮件地址)。

        • 基本组成:包括普通字符(如字母和数字)、特殊字符(如.表示任意单个字符,*表示前一个字符的零次或多次出现),以及括号、中括号等用于定义字符集和组的符号。

         • 用途:常用于文本编辑器(如vi、vim)、文件搜索工具(如grep、sed、awk)等中,以执行复杂的文本匹配和替换操作。

(2) 管线命令(Pipeline Commands)

        管线命令是指将一个命令的输出作为另一个命令的输入的方式。在Linux中,这通常通过管道符号(|)来实现。

        • 工作方式:例如,ls -l | grep "txt" 这个命令首先执行ls -l列出当前目录下的文件和目录的详细信息,然后grep "txt"会从这些信息中筛选出包含“txt”的行。

        • 用途:管线命令使得多个命令可以协同工作,处理复杂的文本处理和数据筛选任务。

(3) 数据流重导向

        数据流重导向是指改变数据输入输出的方向,包括标准输入(stdin)、标准输出(stdout)和标准错误输出(stderr)。

         重定向操作符:

        >:将输出重定向到文件,如果文件已存在则覆盖。

        >>:将输出追加到文件末尾,如果文件不存在则创建。

        <:将文件内容作为输入重定向给命令。

        2>:将标准错误输出重定向到文件。

        &> 或 >file 2>&1:将标准输出和标准错误输出都重定向到同一个文件。

        用途:数据重定向常用于将命令的输出保存到文件、将文件内容作为命令的输入,或者将错误信息记录到特定位置等场景。

综上所述,正规表示法、管线命令和数据流重导向是Linux系统中处理文本和数据流的三大重要工具。它们使得Linux用户可以以高效、灵活的方式处理复杂的文本和数据操作任务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/446134.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[棋牌源码] 2023情怀棋牌全套源代码含多套大厅UI及600+子游源码下载

降维打击带来的优势 这种架构不仅极大提升了运营效率&#xff0c;还降低了多端维护的复杂性和成本。运营商无需投入大量资源维护多套代码&#xff0c;即可实现产品的全终端覆盖和快速更新&#xff0c;这就是产品层面的降维打击。 丰富的游戏内容与多样化大厅风格 类型&#…

VS2017 编译 SQLite3 动态库

首先官方下载源码: Tags sqlite/sqlite (github.com) 1.安装 VS2017 community edition 2.打开VS2017命令行工具 3.安装TCL 开发库,推荐 TCL 9.0 先下载源码: Tcl/Tk 9.0 使用vs2017编译tcl&

图书馆自习室座位预约管理微信小程序+ssm(lw+演示+源码+运行)

摘 要 随着电子商务快速发展世界各地区,各个高校对图书馆也起来越重视.图书馆代表着一间学校或者地区的文化标志&#xff0c;因为图书馆丰富的图书资源能够带给我们重要的信息资源&#xff0c;图书馆管理系统是学校管理机制重要的一环&#xff0c;,面对这一世界性的新动向和新…

vue3中监视 Reactive对象中的属性

watch 的第一个参数可以是不同形式的“数据源”&#xff1a;它可以是一个 ref (包括计算属性)、一个响应式对象、一个 getter 函数、或多个数据源组成的数组 一、框架&#xff1a; <template><div class"divBox"><h2>姓名&#xff1a;{{ person.…

ElasticSearch是什么?

1.概述 Elasticsearch 是一个基于 Apache Lucene 构建的开源分布式搜索引擎和分析引擎。它专为云计算环境设计&#xff0c;提供了一个分布式的、高可用的实时分析和搜索平台。Elasticsearch 可以处理大量数据&#xff0c;并且具备横向扩展能力&#xff0c;能够通过增加更多的硬…

力扣周赛:第419场周赛

&#x1f468;‍&#x1f393;作者简介&#xff1a;爱好技术和算法的研究生 &#x1f30c;上期文章&#xff1a;力扣周赛&#xff1a;第415场周赛 &#x1f4da;订阅专栏&#xff1a;力扣周赛 希望文章对你们有所帮助 因为一些特殊原因&#xff0c;这场比赛就打了1h&#xff0c…

Linux——传输层协议

目录 一再谈端口号 1端口号范围划分 2两个问题 3理解进程与端口号的关系 二UDP协议 1格式 2特点 3进一步理解 3.1关于UDP报头 3.2关于报文 4基于UDP的应用层协议 三TCP协议 1格式 2TCP基本通信 2.1关于可靠性 2.2TCP通信模式 3超时重传 4连接管理 4.1建立…

【uni-app】HBuilderX安装uni-ui组件

目录 1、官网找到入口 2、登录帐号 3、打开HuilderX 4、选择要应用的项目 5、查看是否安装完成 6、按需安装 7、安装完毕要重启 8、应用 前言&#xff1a;uniapp项目使用uni-ui组件方式很多&#xff0c;有npm安装等&#xff0c;或直接创建uni-ui项目&#xff0c;使用un…

开源商城系统crmeb phpstudy安装配置

BOSS让我最快时间部署一套开源商场系统&#xff0c;今天就以crmeb为例。 快速部署在linux中我会首选docker&#xff0c;因为我要在windows中部署&#xff0c;本文就选用phpstudy集成环境做了。 什么是crmeb 我从官网摘点&#xff1a; CRMEB产品与服务 CRMEB通过将CRM&#x…

Leecode刷题之路第18天之四数之和

题目出处 18-四数之和-题目出处 题目描述 个人解法 思路&#xff1a; todo 代码示例&#xff1a;&#xff08;Java&#xff09; todo复杂度分析 todo 官方解法 18-四数之和-官方解法 方法1&#xff1a;排序双指针 思路&#xff1a; 代码示例&#xff1a;&#xff08;Java…

codeforces round976 div2

A find minimum operations 思路&#xff1a;将所给的n变成k进制数&#xff0c;答案就是n的k进制形式下的位数之和 代码&#xff1a; #include <bits/stdc.h> using namespace std;typedef long long ll;ll n, k;void solve() {cin >> n >> k;ll cnt 0…

陪诊小程序搭建:打造便利的陪诊环境

陪诊行业作为一个新兴行业&#xff0c;随着老龄化的严重&#xff0c;在近几年中需求量日益旺盛。陪诊师为大众的就医提供了极大的便利性&#xff0c;在看病难、医疗资源紧张方面发挥了积极作用。 在陪诊行业的快速发展下&#xff0c;陪诊小程序为行业带来了便捷的模式&#xf…

解决:gpg: 从公钥服务器接收失败:服务器故障

当你添加密钥时报错&#xff0c;可以按照下面的步骤&#xff0c;依次输入。 # 停止 Network Manager 服务 sudo service network-manager stop# 删除 Network Manager 的状态文件 sudo rm /var/lib/NetworkManager/NetworkManager.state# 重新启动 Network Manager 服务 sudo …

TCP IP网络编程

文章目录 TCP IP网络编程一、基础知识&#xff08;TCP&#xff09;1&#xff09;Linux1. socket()2.bind()2.1前提2.2字节序与网络字节序2.3 字节序转换2.4 字符串信息转化成网络字节序的整数型2.5 INADDR_ANY 3.listen()4.accept()5.connect()6.案例小结6.1服务器端6.2 客户端…

Idea不能创建java8切换路径

顶部的Server URL改成https://start.aliyun.com/

【原创】可用于 Android Studio 的翻译插件

在不少讲解Android 开发的老师视频中会出现一个运行在Android Studio 上的翻译插件&#xff0c;感觉挺实用的。 接下来&#xff0c;我们把它安装在我们的Android Studio 上。 设置 点击右上角齿轮按钮&#xff0c;选择Settings 安装 翻译插件 输入Tanslation&#xff0c;选…

ZStack ZROP首个商用版本发布,打造云的可持续发展框架

经过长时间的研发和测试&#xff0c;ZStack ZROP IT服务中台V4.2.0版本正式发布。ZROP 是针对ZStack全系列产品运营、运维、一体化的自研平台。作为第一个商用版本&#xff0c;ZROP V4.2.0支持包含ZStack Cloud、ZStack Cube、ZStack ZStone、ZStack Zaku、ZStack Edge、ZStack…

针对考研的C语言学习(循环队列-链表版本以及2019循环队列大题)

题目 【注】此版本严格按照数字版循环队列的写法&#xff0c;rear所代表的永远是空数据 图解 1.初始化部分和插入部分 2出队 3.分部代码解析 初始化 void init_cir_link_que(CirLinkQue& q) {q.rear q.front (LinkList)malloc(sizeof(LNode));q.front->next NULL…

C++的随机数操作

首先想到的肯定是rand()函数&#xff0c;但是这个有点问题 引入头文件<stdlib.h> 如果不引入种子&#xff0c;它的随机数不是随机数&#xff0c;是固定的一串数字 srand()函数&#xff0c;产生随机的种子 示例&#xff1a; 产生0-99的随机数 #include<stdlib.h&g…

QD1-P5 HTML 段落标签(p)换行标签(br)

本节视频 www.bilibili.com/video/BV1n64y1U7oj?p5 ‍ 本节学习 HTML 标签&#xff1a; p标签 段落br标签 换行 ‍ 一、p 标签-段落 1.1 使用 p 标签划分段落 <p>段落文本</p>示例 <!DOCTYPE html> <html><head><meta charset"…