Linux:入门学习知识及常见指令

news2024/11/28 8:24:29

文章目录

  • 入门介绍
    • 操作系统的概念
    • Linux机器的使用
    • Linux上的指令
  • 对文件知识的补充
    • 文件的定义和一些含义
    • 文件和目录的存储
    • 绝对路径和相对路径
  • ls指令
  • pwd指令
  • cd指令
  • touch指令
  • mkdir指令
  • rmdir指令
  • rm指令
  • man指令
  • cp指令
  • mv指令
  • cat指令
  • more指令
  • echo指令
    • 输出重定向
  • less指令
  • find指令
  • grep指令
  • zip/unzip指令

入门介绍

操作系统的概念

操作系统(Operating System)是软件,操作系统的存在是为了让计算机更好用,这是操作系统的根本要义

在计算机内部大致是可以这样进行划分:

在这里插入图片描述
操作系统是一款进行软硬件资源管理的软件,具体如何理解这句话?

在C语言学习中我们写的第一个程序一般都是:

printf("hello world!");

从最终效果来看,printf函数把hello world这句话打印在了显示屏上,我们可以通过显示屏看到这句话,那么实际上,从这句程序到最后打印到显示屏上是需要进行一些复杂的过程,我们编写的程序为什么最终可以访问到硬件?这当中必然离不开操作系统的能力

Linux机器的使用

这里我采用的是XShell的机器,后续的学习也都会用XShell进行学习

登录指令

进入Linux界面,输入

ssh root@xxx.xxx.xxx(ip地址)

Linux上的指令

对于用习惯Windows的我们来说,转到Linux上一大不习惯的地方就是Linux的各种指令,简单来说,你可以在Windows上用鼠标和键盘完成一系列例如进入目录寻找某个文件,复制粘贴文件…等所有操作,而这些操作都是用键盘鼠标完成的,而在Linux上的一大不同点就是把这些全部换成了指令,但我们需要知道的一点是图形化界面和命令行操作的本质都是一样的,都是对操作系统进行直接或间接的操作

我们用的指令,本质上就是可执行程序写的,指令,工具,可执行程序…的本质都是可执行程序

那么介绍完这些,就可以正式开始学习Linux了,打开来自新世界的大门


介绍linux指令中,对于我还没有完全学习的指令只写已经学习完的,没有学习的后续进行补充

对文件知识的补充

文件的定义和一些含义

ls是一个查看目录和文件的指令,那么在这之前首先要对存储的文件有一些基础的认识

新建一个文件,这个文件是否占据空间?
答案是占据!文件的名字,文件的大小,文件的修改日期…这些都会在计算机内存中占据一定的空间,因为这些都是对文件属性的描述,文件可以表示为内容加属性,而从数据的角度来讲,文件的内容和文件的属性都是数据,都是要在磁盘硬盘中留下自己的一席之地,而我们下面讲的ls指令,就是对文件的属性进行的操作

.开头的文件以及本级目录上级目录都是什么?

Linux中,以.开头的文件都是隐藏文件

在Windows图形化界面中,想要返回上一级目录只需要选择退回就可以,而在Linux指令级的界面中,就需要用到本级目录和上级目录:

.      表示的是本级目录,也叫做当前所在目录
..     表示的是上级目录,后面讲的cd指令就是去特定的目录所用的

.本级目录的作用:用来执行一个程序,假如现在有一个程序是a.out,现在我要执行它,我就应该使用下面的指令

正确的方式:
./a.out
不正确的方式:
a.out

而这个./的意义,就是要找到这个程序,再对它进行运行

文件和目录的存储

在Linux系统中,磁盘上的文件和目录被组成了一棵目录树,每个节点都是目录和文件,具体可以这样表示:

在这里插入图片描述
可以类比Windows系统的概念,在Windows系统中,C盘下有很多文件和文件夹,而文件夹中又会有很多文件和文件夹…在Linux中也是如此,root根目录下有user,dev,home等许多文件和文件夹,文件夹又可能有更多的分支,因此根目录实际上是一种多叉树的结构

为什么在Linux系统中要采用这样的结构?

在系统中一定会存在命名一样的文件,而只有通过这种方式才能找到文件的唯一标识文件的方式,因为对于任何一个节点来说,它有且只有唯一的一个父节点

绝对路径和相对路径

在描述一个文件在系统中所处的位置时,可以有两种表示方式,分别是绝对路径和相对路径,绝对路径就是指从根目录出发到这个文件一路的路程表示,而相对路径是指我相对于你所处的位置,例如,现在要表示一下上图中bin文件的路径,我现在所处的目录是在lib路径下

用绝对路径来表示就是
/root/user/bin
用相对路径来表示就是
../bin/a.txt

ls指令

基本语法:ls 项目 目录或文件
功能:对于目录来说,用该命令列出该目录下的所有子目录和文件,对于文件,列出文件名和其他信息
常用的指令

-a:列出目录下的所有文件,包括.开头的隐藏文件
-l :查看目录下的详细信息,显示文件的更多信息

ls -l和ls -a可以一起使用,既显示隐藏文件又显示更多信息
在这里插入图片描述
在这里插入图片描述

pwd指令

语法:pwd
功能:显示用户当前所在的目录

这是一个很简单的指令,就是用来看当前我们所处的是哪个目录

cd指令

语法:cd 目录名
功能:改变工作目录,将当前工作目录转到指定的目录下
例如:

cd … : 返回上级目录
cd /root/litao/linux/ : 绝对路径
cd …/user/ : 相对路径
cd ~:进入用户家目
cd -:返回最近访问目录

touch指令

语法:touch 选项 文件
功能:touch命令参数可以改变文档或目录的日期和时间,包括存取时间和更改时间,或者创建一个不存在的文件
常用选项:

mkdir指令

语法:mkdir 选项 dirname
功能:在当前目录下创建一个名为dirname的目录
常用选项:

-p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立
好那些尚不存在的目录,即一次可以建立多个目录

rmdir指令

rmdir是一个和mkdir向对应的指令,mkdir是用来创建目录,rmdir是用来删除命令
语法:rmdir -p dirname
功能:删除空目录
常用选项

-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除

rm指令

语法:rm 选项 dirname
功能:删除文件和目录
常用选项

-f 即使文件属性为只读(即写保护),亦直接删除
-i 删除前逐一询问确认
-r 删除目录及其下所有文件

man指令

这个指令类似于一个帮助文档,当我们遇到Linux中我们不熟悉的指令时,可以用这个帮助文档来替我们解决问题:
语法:man 选项 命令
功能:帮助我们寻找一些指令含义

cp指令

语法:cp 选项 源文件或目录 目标文件或目录
功能:复制文件或目录
说明:cp指令用于复制文件或目录,如果指定了两个以上的文件或目录,且最后一个的目的地是一个已经存在的目录,则会把它前面所有的文件或目录都复制到这个目录中,若指定了多个文件或目录,而最后一个目的地不存在,就会报错
常用选项:

-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i 或 --interactive 覆盖文件之前先询问用户
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链
接,则一律视为普通文件处理
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

mv指令

mv指令是move的意思,可以用来移动文件或者给文件更改名字,这是Linux下常用的一个命令,用来备份文件或者目录
语法:mv 选项 源文件或目录 目标文件或目录
功能:

  1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
  2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
  3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。
    常用选项:

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

cat指令

语法:cat 选项 文件
功能:查看目标文件的内容
常用选项:

-b 对非空输出行编号
-n 对输出的所有行编号
-s 不输出多行空行

more指令

语法:more 选项 文件
功能:类似于cat
常用选项:

-n 对输出的所有行编号
q 退出more

echo指令

echo后跟着内容,默认情况下会把内容打印到显示屏上,通过输出重定向的指令可以把内容打印到文件中

在这里插入图片描述

输出重定向

首先要对Linux有直观的认识,Linux下一切皆文件,不管是从显示器写入还是从键盘写入,我们都可以把这个过程看成是文件的操作,下面就引入了输出重定向的概念

那么如何理解一切皆文件的概念?这里echo是把内容输出到显示屏中,我们可以把echo写到显示屏的操作看成向一个叫做显示屏的文件中写入内容,而输出重定向就是把这段本该输出到显示器文件的内容输出到其他文件中,因此可以完成下面的操作

在这里插入图片描述
那什么又是追加重定向?它和输出重定向有什么区别呢?
这里的追加重定向和输出重定向本质上和文件的操作中关于a和w是一样的
追加重定向不会覆盖原文件,只会在原来文件的基础上增加,而输出重定向会覆盖原文件重新写入

在这里插入图片描述

less指令

这里介绍less指令的各项作用和功能

首先nano中创建一个文件,里面是hello linux
在这里插入图片描述
less工具指令是对文件或其他输出进行分页显示的工具,在Linux中功能十分强大

语法:
less 参数 文件
功能:less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。
常用选项:

-i 忽略搜索时的大小写
-N 显示每行的行号
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
q:quit

find指令

Linux下find命令在目录结构中搜索文件,并执行指定的操作。
Linux下find命令提供了相当多的查找条件,功能很强大。
语法: find pathname -options
功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
常用选项:
-name 按照文件名查找文件

grep指令

语法: grep [选项] 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行

zip/unzip指令

语法: zip 压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式
常用选项:
-r 递 归处理,将指定目录下的所有文件和子目录一并处理


Linux指令只是入门要掌握的一些基本操作

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【UE5 多人联机教程】05-生成玩家

步骤 1. 新建一个游戏模式基础 命名为“GM_Lobby” 2. 新建一个玩家控制器,命名为“PC_Lobby” 3. 新建一个游戏状态基础 命名为“GS_Lobby” 重新设置游戏模式重载、玩家控制器类、游戏状态类 4. 新建一个控件蓝图,命名为“UMG_Lobby” 打开“UMG_Lobb…

AI数字人为千行百业赋能,具有哪些优势?

AI产业的发展迅速,促使AI数字人产业也迎来了高速发展,数字人凭借愈发逼真的形象,开始在更多的场景、行业中进行赋能,为千行百业注入新的灵魂。 现阶段,数字人理论和技术正在不断成熟,应用范围也在不断扩大&…

opencv-25 图像几何变换04- 重映射-函数 cv2.remap()

什么是重映射? 重映射(Remapping)是图像处理中的一种操作,用于将图像中的像素从一个位置映射到另一个位置。重映射可以实现图像的平移、旋转、缩放和透视变换等效果。它是一种基于像素级的图像变换技术,可以通过定义映…

为什么需要GP(Global Platform)认证?

TEE之GP(Global Platform)认证汇总 一、为什么需要认证? 二、为什么是GP? 参考: GlobalPlatform Certification - GlobalPlatform

Unity光照相关知识和实践 (烘焙光照,环境光设置,全局光照)

简介 本文将会通过一个简单的场景搭建,介绍如何使用烘焙光照以及相关的注意事项。另外还介绍了Unity内全局光照(GI)的知识和GI实际在游戏内的表现效果。 Unity关于光照相关的参考文档地址:https://docs.unity.cn/cn/current/Man…

黑客自学笔记(网络安全)

一、黑客是什么 原是指热心于计算机技术,水平高超的电脑专家,尤其是程序设计人员。但后来,黑客一词已被用于泛指那些专门利用电脑网络搞破坏或者恶作剧的家伙。 二、学习黑客技术的原因 其实,网络信息空间安全已经成为海陆空之…

使用goldengate 迁移Oracle到postgresql

环境: --源端: IP:10.0.4.16 hostname:tencent Oracle数据库版本:12.2.0.1.0 ogg for oracle版本:19.1.0.0.4 SID:orcl --目标端: IP:10.0.4.16 hostname&#…

Spring 6【p命名空间和c命名空间】(五)-全面详解(学习总结---从入门到深化)

目录 十、p命名空间和c命名空间 十、p命名空间和c命名空间 老版本的Spring框架XML配置文件是使用DTD的,但是在目前Spring框架中多使用XSD。因为在XSD扩 展支持。这也是为什么Spring框架配置文件由原来的DTD更换成XML Schema,毕竟Spring现在是模块化了&…

java 锁详解

死锁有四个条件 1. 互斥性 某个锁单元只能被某个运算单元占用 2. 不可以剥夺 线程获取某个资源, 这个资源不可以被其他资源剥夺, 只能自己释放, 3. 请求并保持 请求别的资源的同时却保持占有某个资源 4. 形成循环链路 一般锁都有互斥性, 读锁没有互斥性. 一般的锁都不…

视觉系统相关的网站

1.视觉系统设计 视觉系统设计网址:http://www.vision-systems-china.com/emag/emag.asp

宿主可以访问公网 Docker容器里无法访问 Temporary failure in name resolution

宿主可以访问公网 Docker容器里无法访问 Temporary failure in name resolution 容器参数 docker-compose.yml 的 dns我也设置,按理来说应该可以访问,然而就是不断的按在地上摩擦 web:build: .restart: alwaysports:- "6699:80"dns:- 114.11…

公司内部重要文件如何加密防止泄露?

现如今,是互联网时代,数据安全在互联网时代中的数据安全岌岌可危,企业中,都会拥有终端,终端中每天都要处理文档,文件,表格,产生一系列的数据问题等,这个时候就要先企业中…

Windows OS CMD 常用工具 の 命令合集

# First Of All 每次想要修改环境变量都要按部就班点开系统属性、高级系统设置、环境变量。这种操作实在是太繁琐了,对于我一个懒人来讲实在是 忍无可忍 。如果可以使用 WINR 或 CMD 直接打开系统内的一些工具,是不是就可以节省很多时间;是不…

自己写的程序创建开机自启

1、winr 2、输入shell:startup 3、把需要启动的程序快捷方式放在此文件夹下面即可

最详细的编译paddleOcrGPU C++版本指南(包含遇到坑的解决办法)

前言: 我是之前编译过调用CPU的paddleOcr的C版本,其实CPU版本与GPU版本并无太大不同,只不过是调用库版本的不同,然后原项目中几个相关参数改一下就可以,但是在这个过程中我找不到关于编译paddleOcrGPU C版本的详细教程…

【Docker】Consul的容器服务更新与发现

目录 一、Consul二、什么是服务注册与发现1.2什么是consul1.3consul提供的一些关键特性 二、Consul部署2.1环境配置2.2Consul服务器配置1. 建立 Consul 服务2. 查看集群信息3. 通过 http api 获取集群信息 2.3 registrator服务器配置1. 安装 Gliderlabs/Registrator2. 测试服务…

如何设置Axure中文版 Mac系统下axurerp10怎么设置成中文

有许多小伙伴肯定想知道axure rp 10怎么转换为中文版,接下来就为大家带来最详细的汉化教程,大家可以根据教程一步一步操作,保证可以汉化成功! 准备工作 安装好axurerp10 axurerp10汉化包 百度网盘链接: 百度网盘 请输入提取码 …

【C++】做一个飞机空战小游戏(一)——使用getch()函数获得键盘码值

最近想用c做一个小游戏,游戏的主要内容是利用键盘控制一个飞机躲避和击落屏幕顶部随机掉落敌方炮弹,飞机被敌方炮弹击中则减掉一条命,飞机也可以发射炮弹反击,每击落一个敌方炮弹,则有相应积分。 游戏的思路就是利用w…

Docker配置阿里云容器镜像加速

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

目录操作在C语言中:一个全面的指南

(꒪ꇴ꒪ ),hello我是祐言博客主页:C语言基础,Linux基础,软件配置领域博主🌍快上🚘,一起学习!送给读者的一句鸡汤🤔:集中起来的意志可以击穿顽石!作者水平很有限,如果发现错误&#x…