liunx操作系统基础及进阶

一、基础入门

1、Linux系统简介

什么是Liunx?

Linux在设计之初,是一个基于POSIX的多用户、多任务并且支持多线程和多CPU的操作系统,它是由世界各地成千上万的程序员设计和开发实现;

在当今社会,Linux 系统主要被应用于服务器端;

Linux 不仅是免费的,更是开源的,所以今天有非常强大的Linux生态

Linux与Unix 系统兼容,具备 Unix 几乎所有的优秀特性

Linux 让开展各种实际有用且具有创造性的事情成为可能

Linux 提供了复杂的软件包管理系统,可以放心地安装和维护每一个在线资源库中的软件应用。

2、Linux系统主要特性

基本思想、完全免费、兼容POSIX1.0标准、多用户 多任务、良好的界面、支持多种平台

3、Linux系统版本

发行版本

Redhat-最著名的Linux版本,企业级

CentoS-要求高稳定性服务器使用

Ubuntu-以桌面应用为主,多媒体

SUSE-连接数据库最稳定

4、Liunx特点

  • 由目的单一的小程序组成;组合小程序完成复杂任务

  • 一切皆文件

  • 尽量避免捕获用户接口

  • 配置文件保存为纯文本格式

Linux的shell,是人机接口。Linux 的shell 包括 GUI(图形界面)和CLI(命令行界面)两种类型

5、Liunx基础命令及注意事项

(1)liunx命令的写法:命令名【选项】【参数】

(2)基础命令

pwd        查看当前所在位置(绝对路径)
绝对路径:以 / 开始
相对路径:相对当前的路径来说
ls        列出当前位置的所以内容
ls        路径        列出列出某个路径下的所有内容

选项
-l        长格式显示
-a        显示所有文件,包括隐藏文件
cd        切换路径(回到家目录)
cd /        切换到根目录
cd ..        回到上一个目录
id        显示用户的详细信息
uid = 0(root) 用户编号        用户身份证
gid = 0(root) 组编号
groups = 0 (root),1 (bin),2 (daemon),3 (sys),4 (adm), 6 (disk) ,10 (wheel)
who               显示当前系统的所有终端
whoami         用户名
who ami        显示当前终端的信息
hostname        主机名
date        显示当前的系统时间

选项
+ %a        星期简写
+ %A        星期全称
+ %b        月份的简写
+ %B        月份的全称
+ %c        日期和时间
+ %d        日(01-31)
+ %D        日期        格式:mm/dd/yy
+ %F        显示年月日        格式:yyyy-mm-dd
cal        查看日历
echo        打印、显示
echo 常亮             打印常亮
echo $变量           打印变量
echo '命令名'        打印命令
ping IP地址        检测多台主机是否连通
history        查看历史命令

(3)遇到一个不认识的命令怎么办?

百度:通过网络途径
命令名 --help
info 命令名
whatis 命令
man 命令名

清屏:Ctrl +L

自动补全:Tab

(4)注意事项

  • 命令名、选项、参数之间必须有空格
  • 区分大小写
  • 选项,一般是'-字母' 或者 '--单词'
  • 参数,可以多个(空格隔开),可以一个,可以没有
  • 多个选项可以连用,并且可以合在一起  ls -a -l、ls -al、ls -la

6、文件及权限操作

(1)Linux目录结构

/ 是Linux所有路径的开始,是所有目录的根

系统启动必须:

        /boot:存放的启动Linux 时使用的内核文件,包括连接文件以及镜像文件。
        /etc: 存放所有的系统需要的配置文件和子目录列表,更改目录下的文件可能会导致系统不能启动。
        /lib: 存放基本代码库 (比如c++库),其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
        /sys: 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs。sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。
指令集合:
        /usr/bin:系统用户使用的应用程序与指令。
        /usr/sbin:s 就是 Super User 的意思,是Superuser Binaries(超级用户的二进制文件)的缩写,这里存放的是系统管理员使用的系统管理程序。
外部文件管理:
        /dev:Device(设备)的缩写,存放的是Linux的外部设备。注意:在Linux中访问设备和访问文件的方式是相同的。
        /media:类windows的其他设备,例如U盘、光驱等等,识别后linux会把设备放到这个目录下。
        /mnt:临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上然后进入该目录就可以查看光驱里的内容了。
临时文件:
        /run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录应该让它指向 run。
        /lost+found:一般情况下为空的,系统非法关机后,这里就存放一些文件。
        /tmp: 这个目录是用来存放一些临时文件的。
运行过程中要用
        /var:存放经常修改的数据,比如程序运行的日志文件 (/var/log 目录下)。
        /proc:管理内存空间!虚拟的目录,是系统内存的映射,我们可以直接访问这个目录来,获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件来做修改。
        proc目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器: echo1> /proc/sys/net/ipv4/icmp echo ignore all

账户

        /root:系统管理员的用户主目录。
        /home: 用户的主目录,以用户的账号命名的。
        /usr:用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
        /usr/src: 内核源代码默认的放置目录。

(2)文件的操作(创建、编辑(移动、复制)、删除)

创建空文件        touch [路径/] 文件名        (可以跟多个,用空格隔开)
创建空目录        mkdir [路径/] 目录名

选项
-p        层级创建
-v        显示过程

附:tree 目录名字        按照树形结构的形式显示目录里面的内容   
移动或者剪切        mv [旧路径]/旧文件名 [新路径]/新文件名

注意:
移动的时候不给文件名,就只是剪切文件
移动的时候给了文件名,剪切的同时重命名
复制文件        cp [旧路径]/旧文件名 [新路径]/新文件名        (只能复制文件不能复制目录)
cp -r 目录名        复制目录
删除空文件        rmdir 目录名字
删除文件        rm 文件名

选项
-r        删除目录
-f        强制删除
-rf        强制删除所有文件和目录

(3)查看文件内容

cat 文件名        查看文件内容
-n        显示行号
more 文件名        (分页查看,查看完之后文件内容会显示出来)
回车        显示一行
空格        显示一页
less 文件名        (分页查看,查看完之后文件内容不会显示出来)
回车        显示一行
空格        显示一页

less可以用做查找
/        向前查找
?        向后查找
n        下一个
N        上一个
head [-数字] 文件名        (查看文件的头几行,不写数字,默认为10行)
tail [-数字] 文件名        (查看文件末尾几行,不写数字,默认为10行)
tail -f 文件名        动态查看文件
tac 文件名        反着看文件
cut        截取

选项
-c        以字符单位进行截取
-d        指定分割符
-f        截取第几部分(和-d配套用)
sort        排序(默认按照首字母升序排序)
选项
-t        指定分隔符
-k        排序列
-n        按照数字排序
-u        去重(按照排序列去重)
-r        反向排序

(4)命令连接符

| 命令1 | 命令2 |..        把前面命令的结果给到后面作为输入项
&&                              前面命令执行成功,执行后面的命令
;                                前后命令的结果互不影响
||                                前面命令执行失败,执行后面的命令

(5)重定向

>        覆盖重定向,前面命令执行成功的结果覆盖写入到文件

>>      追加重定向,前面命令执行成功的结果追加写入到文件

2>      覆盖重定向,前面的命令执行失败的结果覆盖写入到文件

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

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

相关文章

【智慧零售】东胜物联蓝牙网关硬件解决方案,促进零售门店数字化管理

依托物联网(IoT)、大数据、人工智能(AI)等快速发展,数字化和智能化已成为零售企业的核心竞争力。更多的企业通过引入人工智能、大数据等先进技术手段,提高门店运营效率和服务质量。 某连锁咖啡企业牢牢抓住…

[嵌入式C][入门篇] 快速掌握基础(9个语句)

开发环境: 网页版:跳转本地开发(Vscode):跳转 文章目录 一、基础语法(1)if (如果)示例1: 普通使用 if示例2: 带否则 else示例3: 否则如果 else if (2)switch case (选择)规则示例1: &#xff0…

谷歌浏览器 模拟定位

注意事项: 如果要清除位置信息,需将Geolocation修改为No override模拟定位之后需要刷新页面,网页才会生效如果模拟定位,一段时间没有操作,就会清空模拟定位,类似于No override

ubuntu远程桌面连接之novnc

一、前言 该操作是为了实现vnc桌面连接为url连接方式,且在浏览器中可以对ubuntu进行操作。在使用novnc进行操作前,需要先安装vnc才可。ubuntu下如何安装vnc,可看博主前面写的一篇文,ubuntu远程桌面连接之vnc-CSDN博客,…

案例074:基于微信小程序的儿童预防接种预约管理系统

文末获取源码 开发语言:Java 框架:springboot JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder …

物流实时数仓:数仓搭建(DWS)一

系列文章目录 物流实时数仓:采集通道搭建 物流实时数仓:数仓搭建 物流实时数仓:数仓搭建(DIM) 物流实时数仓:数仓搭建(DWD)一 物流实时数仓:数仓搭建(DWD&am…

22款奔驰GLE450升级香氛负离子 车载香薰

相信大家都知道,奔驰自从研发出香氛负离子系统后,一直都受广大奔驰车主的追捧,香氛负离子不仅可以散发出清香淡雅的香气外,还可以对车内的空气进行过滤,使车内的有害气味通过负离子进行过滤,达到车内保持清…

神经网络:经典模型热门模型

在这里插入代码片【一】目标检测中IOU的相关概念与计算 IoU(Intersection over Union)即交并比,是目标检测任务中一个重要的模块,其是GT bbox与pred bbox交集的面积 / 二者并集的面积。 下面我们用坐标(top&#xff0…

Oracle导出CSV文件

利用spool spool基本格式: spool 路径文件名 select col1||,||col2||,||col3||,||col4 from tablename; spool off spool常用的设置: set colsep ;    //域输出分隔符 set echo off;    //显示start启动的脚本中的每个sql命令,缺…

ROS学习记录:在ROS中用C++实现激光雷达避障

前言 本文建立在成功获取激光雷达数据的基础上&#xff0c;详细参考 在ROS中用C实现获取激光雷达的数据 一、实现思路 二、在VScode中打开之前编写好的lidar_node.cpp 三、在lidar_node.cpp中写入如下代码 #include <ros/ros.h> #include <std_msgs/String.h> …

k8s---pod的生命周期

pod的相关知识 pod是k8s中最小的资源管理组件 pod也是最小化运行容器化的应用的资源管理对象 pod是一个抽象的概念&#xff0c;可以理解为一个或者多个容器化应用的集合。 k8s中pod的两种使用方式 &#xff08;1&#xff09;一个pod中运行一个容器。"每个po中一个容器&…

知虾会员**成为知虾会员,尊享专属权益**

在当今繁忙的生活中&#xff0c;线上购物已经成为现代人们的主要消费方式之一。而作为线上购物平台的领军者之一&#xff0c;Shopee为了提供更加个性化和便利的购物体验&#xff0c;推出了知虾会员&#xff08;Shopee会员&#xff09;服务。知虾会员不仅可以享受到一系列会员专…

国产化软硬件升级之路:πDataCS 赋能工业软件创新与实践

在国产化浪潮的推动下&#xff0c;基础设施软硬件替换和升级的需求日益增长。全栈国产化软硬件升级替换已成为许多领域中的必选项&#xff0c;也引起了数据库和存储领域的广泛关注。近年来&#xff0c;虽然涌现了许多成功的替换案例&#xff0c;但仍然面临着一些问题。 数据库…

某音关键词搜索商品接口,某音关键词搜索商品列表接口,宝贝详情页接口,某音商品比价接口接入方案

要接入API接口以采集电商平台上的商品数据&#xff0c;可以按照以下步骤进行&#xff1a; 1、找到可用的API接口&#xff1a;首先&#xff0c;需要找到支持查询商品信息的API接口。这些信息通常可以在电商平台的官方文档或开发者门户网站上找到。 2、注册并获取API密钥&#x…

界面控件DevExpress Blazor Grid v23.2 - 支持全新的单元格编辑模式

DevExpress Blazor UI组件使用了C#为Blazor Server和Blazor WebAssembly创建高影响力的用户体验&#xff0c;这个UI自建库提供了一套全面的原生Blazor UI组件&#xff08;包括Pivot Grid、调度程序、图表、数据编辑器和报表等&#xff09;。 在这篇文章中&#xff0c;我们将介…

Golang 通用代码生成器仙童已发布 2.4.0 电音仙女尝鲜版三及其介绍视频,详细介绍了 Oracle 代码生成

Golang 通用代码生成器仙童已发布 2.4.0 电音仙女尝鲜版三及其介绍视频&#xff0c;详细介绍了 Oracle 代码生成 Golang 通用代码生成器仙童已发布 2.4.0 电音仙女尝鲜版三及其介绍视频。详细介绍了 Oracle 代码生成。即生成后端数据库为 Oracle 的 golang web 代码。并同时生…

解决SyntaxError: future feature annotations is not defined,可适用其他包

方法&#xff1a;对报错的包进行降级 pip install tikzplotlib0.9.8site-packages后面是使用pip install安装的包&#xff0c;根据这个找到报错的包 想法来源&#xff1a; 环境是python3.6&#xff0c;完全按照作者要求进行环境配置&#xff0c;但仍报错。 我在网上找的解决…

使用Redis进行搜索

文章目录 构建反向索引 构建反向索引 在Begin-End区域编写 tokenize(content) 函数&#xff0c;实现文本标记化的功能&#xff0c;具体参数与要求如下&#xff1a; 方法参数 content 为待标记化的文本&#xff1b; 文本标记的实现&#xff1a;使用正则表达式提取全小写化后的…

阿里云服务器Valheim端口2456、2457和2458放行设置

使用阿里云服务器搭建Valheim英灵神殿需要开启2456-2458端口&#xff0c;阿里云服务器默认只开放了22核3389端口&#xff0c;开通2456端口是在安全组中配置的&#xff0c;阿里云服务器网aliyunfuwuqi.com来详细说下阿里云服务器安全组开通端口流程&#xff1a; 阿里云服务器安…

文件管理方法:利用文件大小进行筛选,高效移动文件至目标文件夹

在日常工作中&#xff0c;文件管理是一项至关重要的任务。为了更高效地管理文件&#xff0c;可以利用文件大小进行筛选&#xff0c;并将文件快速移动至目标文件夹。接下来一起来看看云炫文件管理器如何利用文件大小进行筛选&#xff0c;以及如何高效移动文件至目标文件夹的方法…