Linux基础指令详解(1)

 操作系统的概念

     百度百科

操作系统(英语:Operating System,缩写:OS)是一组主管并控制计算机操作、运用和运行硬件、软件资源和提供公共服务来组织用户交互的相互关联的系统软件程序。根据运行的环境,操作系统可以分为桌面操作系统,手机操作系统,服务器操作系统,嵌入式操作系统等。 [12]

操作系统是人与计算机之间的接口,也是计算机的灵魂。 [14]

看到上面对操作系统概念的定义我们看到了操作系统的重要性,它是计算机的灵魂。

操作系统一般也由四个重要的组成部分构成,分别是进程管理  文件管理  内存管理 驱动管理

操作系统的工作就是去把这四个部分协调起来进行执行。

我们再来看下面的这个图。

 

这个就是我们操作系统在计算机中的地位,我们又可以分为对硬件和对我们的用户。

什么是操作系统

我们知道我们现在的计算机有好多的作用,比如我们现在是可以用它来打游戏,这个操作我们是对用户的,我们也知道我们的计算机是由CPU,磁盘 ,硬盘,显示器等硬件组成,我们玩游戏的时候总不是用我们的手去扣这些硬件,要不然我们在峡谷的时候放个大招还有扣扣我们的CPU,那LOL总冠军就是那些手快的了对吧,所以我们的操作系统可以帮我们来完成这些。

那我们就可以将这些分为对上和对下

  1. 对上:给用户提供一个良好的,稳定的,高效的运行环境
  2. 对下:管理好底层的硬件

这个就是我们操作系统在计算机内充当的角色。

指令详解

这也是我们今天主要讲解的内容就是我们的指令部分,这里指令我们就讲经常用的几个指令。

1.ls指令

ls [选项][文件或者目录]

ls : 显示该目录下的所有文件和目录

        对于文件,会列出文件的详细信息

常用选项:

-a :  列出目录下的所有文件,包括以 . 开头的隐含文件。
-d :  将目录象文件一样显示,而不是显示其下的文件。 如: ls –d 指定目录
-i :  输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
-k:   k 字节的形式表示文件的大小。 ls –alk 指定文件
-l :  列出文件的详细信息。
-n : 用数字的 UID,GID 代替名称。 (介绍 UID GID
-F : 在每个文件名后附上一个字符以说明该文件的类型, “*” 表示可执行的普通文件; “/” 表示目录; “@”
示符号链接; “|” 表示 FIFOs “=” 表示套接字 (sockets) 。(目录类型识别)
-r :  对目录反向排序。
-t : 以时间排序。
-s:  l 文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
-R:  列出所有子目录下的文件。 ( 递归 )
-1 : 一行只输出一个文件。

这是我们ls的后面加上的指令。我们来到我们的xshell上来看看。

我们首先什么都不干,直接ls来看看是个什么情况。

可以发现这个什么都没有,这是因为我们在当前路径下什么都没有,这就和我们在windows下创建一个新的目录,发现里面什么都没有。

 这个就是在windows下的操作,那我们这里需要在用的指令就是在该目录下创建一个文件,这样就行了。

vocal,果然这个是有用的,那我们这个时候就可以来看看ls加上一些选项的结果,这里我们就只讲最重要的几个,我们首先来看的就是ls加上-l的结果。

 

相比之下我们可以看到ls加上-l(记住这里是有空格的)后可以看到更多的属性,ls是只显示文件名的。

Linux隐藏文件 

我们都知道在windows是有隐藏的文件,不信我们来看。

那我们Linux下怎样的才算是隐藏文件的!答案是带·的就是隐藏文件。

我们可以touch一个带.的文件来看看。

我们这里也是创建一个.youcannotsee的文件,但是ls -l 只后我们也没能看到我们的隐藏文件。这个时候我们就可以换个指令就是ls -a就行了。

a就有all的意思就是把所有文件都显示出来,那我们来看看。

 

这里我们要扩展一些关于文件的东西,我们在windows下的文件是不是有文件内容还有文件属性,哪些是文件属性呢,文件的属性有时间,大小等,我们的Linux下的文件是怎么样的呢。

文件 = 文件内容 + 文件属性

我们ls -l就可以显示出文件和文件的属性,我们可以通过上面的图看到我们有创建属性和大小,这些都是文件的属性,这里也抛出一个问题,我们创建一个文件,如果这个文件里内容为空,那他是文件吗答案是: 它百分之百是文件,因为文件是由文件内容和属性组成的。

我们也可以把ls -a -l 一起用,下面这张图前面的内容我们会在后面讲,这里大家只要知道这是文件的属性就OK了

 

可以看到显示的东西更多了。

一个点(.)和两个点(..) 

我们每次ls -al的时候都可以看到两个点和一个点,这里的点是什么意思呢,我们这里也来详细的解释一下

 

  •  . 当前路径
  •  .. 上级路径 

我们在Windows下返回上级路径是通过这个的。

点红圈圈这个就行了。

 

我们就可以返回上级路径了。我们这里还要知道一个指令就是pwd

pwd: 显示当前路径

还有就是cd指令,cd指令我们就可以认为是我们在Windows下双击文件夹的感觉。

 所有pwd就是显示当前的路径,我们如果cd 一个点就是还是在当前路径,cd .. 就是返回上级的路基了。

 

那我们在Linux下和Windows的路径有什么不一样,爱找不同的人就是肯定能发现Linux路径分隔符是/ 在Windows下就是\ 

上面的  / 就称作为路径分隔符 

我们如果cd和路径一起用的话,是不是就可以找到我们想去的文件目录下了

vocal 发现新大陆了!来吧 展示。

因为我这里之前是创建过文件的,所有大家哪里尝试的时候就没有,但是大家可以创建文件来用,我们后面如果想去这个目录下的话就可以直接cd进入就OK了。

那一个点有什么用,我们来看下面的操作。

 

我们这里用到的gcc先不管,nano来讲解一下‘,它就是相当于编辑器,我们可以来看看

nano + 文件名之后就会有下面的内容。

 

我们在这里就可以写内容和代码,写好之后ctrl + x就是保存,然后要进行的操作就是Y在加上Enter就可以了,然后我们gcc + 文件名 (gcc后面会讲)。

 

所有我们如果要运行a.out就得这样写。

 

这个就是要执行我们当前目录下的文件 这里的一个点就是当前路径下。

绝对路径和相对路径 

其实绝对路径我们认为就是从根节点开始往下找的就是绝对路径,那么刚开始这个到底是从哪里开始的呢,我们又要引出下面的概念就是我们的整个目录其实就是一个多叉树。

 大家可以看上面这个图我们如果是从/开始往下走就是唯一的路径,我们称之为绝对路径。

这个时候我们就来详细的解释一下cd这个指令了。

cd

改变工作目录。将当前工作目录改变到指定的目录下。 

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

 这个就是cd的全部选项,我们需要全部记下来。

上面的大家看看应该就能明白了,有了cd指令我们就可以进入我们想要进入的文件和目录下面了

就可以来去自如了。

那这个从当前路径来去自如到其他目录下这个路径我们就叫它为相对路径。

日常使用我们用的就是相对路径。

 创建操作

touch指令

touch [选项] 文件

touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件

-a    --time=atime --time=access --time=use 只更改存取时间。
-c    --no-create  不建立任何文档。
-d  使用指定的日期时间,而非现在的时间。
-f  此参数将忽略不予处理,仅负责解决 BSD 版本 touch 指令的兼容性问题。
-m    --time=mtime --time=modify  只更改变动时间。
-r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t  使用指定的日期时间,而非现在的时间

和之前一样我们只讲一些基础的操作,比如创建文件。

会这个操作就可以了,下面我们再来讲讲创建目录。

mkdir指令

mkdir [选项] dirname...

在当前目录下创建一个名为 “dirname”的目录

mkdir这个指令我们只要掌握它能创建目录,递归创建的话只需要加上-p就可以了。

我们如果想创建一个目录里有目录的就可以这样创建。

 所以必须加上-p才可以,我们再来看看删除的指令。

基本删除指令

rmdir : 只能删除空目录,其他的都不能删除

目录里不能有内容,否则无法进行删除。

rm : 就可以删除普通文件。 

 

如果我们想要删除目录的时候,我们来看看。

发现他不让我进行删除,这个时候我们需要加上-r就可以了。

 

但是发现他每次都要问我是不是要删除,会觉得很烦,我们这样强制的删除就是加上f就可以了。

 

我们这里在讲一个通配符  它表示可以代表任何,比如我们这里把当前内容全部进行删除,可以这样写。

我们这里删除的是当前的路径,一定要看仔细,可不能删除根目录下的。

这样12_10下的所有东西就都被删除了。

那我们今天的内容就到此结束了,我们下次再见。

 

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

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

相关文章

Java基础课的中下基础课04

目录 二十三、集合相关 23.1 集合 (1)集合的分支 23.2 List有序可重复集合 (1)ArrayList类 (2)泛型 (3)ArrayList常用方法 (4)Vector类 (…

List 接口

1 List 接口 java.util 中的集合类包含 Java 中某些最常用的类。最常用的集合类是 List 和 Map。 List是一种常用的集合类型,它可以存储任意类型的对象,也可以结合泛型来存储具体的类型对象,本质上就是一个容器。 1.1 List 类型介绍 有序性…

Linux C/C++ 从内存转储中恢复64位ELF可执行文件

ELF(Executable and Linking Format)是一种对象文件的格式,它主要用于定义ELF(Executable and Linking Format)是一种对象文件的格式,它主要用于定义不同类型的对象文件中的内容以及它们的存储方式。一个EL…

Anaconda文件目录(打开默认路径)更改

Anaconda 文件默认目录更改 每次打开 Anaconda 都在C盘怎么办,如何改为D盘或是其他盘符位置? 可以进行下述操作。 1. 单次修改路径 单次修改路径:在 exe 文件(Anaconda Prompt (Anaconda_py))中写入下面代码: jupyter notebook …

基于OpenCV的流水线包装箱检测计数应用(附源码)

导 读 本文主要介绍基于OpenCV的流水线包装箱检测计数应用,并给出源码。 资源下载 完整代码和视频下载地址: https://github.com/freedomwebtech/rpi4-conveyor-belt-boxces-counter 核心代码如下(cboxtest.py): import cv2import numpy as npfrom tracker import*cap=c…

持续集成交付CICD:Jenkins配置Nexus制品发布

目录 一、实验 1.Jenkins配置Nexus制品发布 一、实验 1.Jenkins配置Nexus制品发布 (1)策略 发布其实就是下载制品,然后将制品发送到目标主机,最后通过脚本或者指令启动程序。 (2)安装Maven Artifact …

JavaEE 08 线程池简介

前言 前面我们谈完了定时器,单例模式,阻塞队列等的操作并且做了模拟实现,今天我们再来说一说线程池的操作以及一些锁策略. 注:本章几乎均为理论篇,实践较少. 下面就让我们开始吧. 线程池 我们知道因为进程的频繁创建和销毁,带来的开销过大,我们无法接受,所以我们引入了更轻量级…

[架构之路-261]:目标系统 - 设计方法 - 软件工程 - 软件设计 - 架构设计 - 网络数据交换格式

一、网络数据交换格式 1.1 什么是网络数据交换格式 网络数据交换格式指的是在计算机网络中传输和存储数据时所采用的特定格式。 它定义了数据的组织方式、结构和编码规则,以便不同系统和应用程序之间能够准确地解析和处理数据。 网络数据交换格式的主要目的是&a…

DIP——边缘提取与分割

1.使用canny算法进行边缘提取 本实验比较简单,基本思路是对原图像进行一个高斯模糊处理,用于去噪,之后转换为灰度图,直接调用cv库中的canny记性边缘提取。若想直接得到彩色边缘,则通过按位与操作,将原始彩色…

人工智能原理复习--机器学习

文章目录 上一篇机器学习概述归纳(示例)学习ID3决策树算法K近邻算法下一篇 上一篇 人工智能原理复习–搜索策略(二) 机器学习概述 学习系统的基本结构: #mermaid-svg-JMjIZHjVOirLolvu {font-family:"trebuchet ms",verdana,ari…

CV计算机视觉每日开源代码Paper with code速览-2023.12.5

点击计算机视觉,关注更多CV干货 论文已打包,点击进入—>下载界面 点击加入—>CV计算机视觉交流群 1.【基础网络架构:Transformer】GIFT: Generative Interpretable Fine-Tuning Transformers 论文地址:https://arxiv.org…

pytorch中的归一化:BatchNorm、LayerNorm 和 GroupNorm

1 归一化概述 训练深度神经网络是一项具有挑战性的任务。 多年来,研究人员提出了不同的方法来加速和稳定学习过程。 归一化是一种被证明在这方面非常有效的技术。 1.1 为什么要归一化 数据的归一化操作是数据处理的一项基础性工作,在一些实际问题中&am…