【Linux基本指令】os概念及定位 | 基本指令 | 热键 上

简介: 【Linux基本指令】os概念及定位 | 基本指令 | 热键

文章目录

【写在前面】

这里不会把所有的指令及选项在入门阶段全部讲出来,当然也不可能全部记住。大量的实例证明一开始死记的人大多数多记不住,这里只讲一些指令的基本功能和一些重要的选项,其余的以后遇到了再实践。在讲每条指令时其中会穿插一些别的概念,其次这里会大概了解下 os 。

一、简单了解os概念及定位

❗ os 概念 ❕

  操作系统 (Operating System,简称 OS) 是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。

在早期的计算机比如 “埃尼阿克” 都是跟硬件或者一堆按钮打交道,无疑成本是很高的;随着计算机的发展,操作系统给用户带来的价值是使用计算机硬件的成本降低。

❗ os 作用 ❕

  对上:给用户提供一个良好的稳定 (简单) 的操作环境

  对下:和硬件打交道,进行合理的软硬件管理

❗ os 定位 ❕


事实上键盘的出现比鼠标要早,在有键盘没有鼠标的年代,人们都是用命令行和计算机交流

❓ 那现如今我们为啥还要逆流而上去学习命令行呢 && 命令行 VS 图形界面❔

  首先界面本质上对用户来说是一种进步的表现,因为没有界面,计算机也不可能普及;但对于学习者,命令行是一种很重要的方式,因为它更接近原生系统。其次命令行的操作效率是比图形界面要更快的,当然命令行的体验肯定不如界面,因为界面所见即所得

二、基本指令

1、ls指令

语法:ls [选项][目录或文件]

功能:对于目录,该命令列出该目录下的所有子目录与文件;对于文件,将列出文件名以及其它信息

常用选项 (选项的意思就是以核心功能为主,扩展其它功能):

▶ 空 ,显示当前目录下的文件信息

   目录名 显示目录下文件信息

▶ -a ,列出目录下的所有文件,包括以 . 开头的隐藏文件

  Linux 下凡是以 . 开头的文件都是隐藏文件,其实隐藏文件就是告诉你它是隐藏文件,你不要乱搞,就像 C 语言中 const 修饰变量,仍然能通过指针修改,那它的意义何在呢

⚠ 注意

 1️⃣ . 是当前路径 —— cd .

 2️⃣ . . 是上级路径 —— cd …

▶ -d ,将目录像文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录

▶ -i ,输出文件的 i 节点的索引信息。 如 ls –ai 指定文件

▶ -k ,以 k 字节的形式表示文件的大小。ls –alk 指定文件

▶ -l ,列出文件的详细信息 (ls -l 也可以替换成 ll)

❗ 文件类型 ❕

我们可以通过 ls -l 或 ll 查看,即用第一个字符来标识不同文件

- :普通文件 (文本文件、可执行文件、各种库文件) 对比 windows 来说雀实很粗暴

d :目录文件

l :链接文件,类似于 windows 下的快捷方式

p :管道文件,用于控制进程之间的通信

c :字符文件 (字符设备:键盘、显示器【Linux下一切皆文件】)

b :块设备 (磁盘)

💨小结

 Windows 区分文件类型用的是后缀 .exe、.docs、.html

 Linux 区分文件类型不通过后缀,通过属性列的第一个字符 (注意这里的不通过不是代表它不使用)

 下图发现可以改变后缀,且不影响文件 (但最好不要做),这里也说明了 Linux 下文件的作用并不取决后缀,虽然不禁止使用,但是一般也不用

❓ Linux 下文件的作用并不取决后缀 ❔

这里把 T.c 文件改成 T 后,再编译

Linux 系统不关心后缀,并不代表编译器不关心 (gcc 是 Linux下的编译器),不要混淆了

▶ -n 用数字的 UID,GID 代替名称。(介绍 UID, GID)

▶ -F 在每个文件名后附上一个字符以说明该文件的类型,“*” 表示可执行的普通文件;“/” 表示目录;“@” 表示符号链接;“|” 表示 FIFOs;“=” 表示套接字(sockets)。(目录类型识别)

 比较少用,因为后面有其它方法可以看文件类型

▶ -r ,对目录反向排序

▶ -t ,以时间排序

▶ -s ,在文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)

▶ -R ,列出所有子目录下的文件。(递归)

▶ -1 ,一行只输出一个文件

2、pwd指令

语法:pwd

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

常用选项:无

⚠ 注意

 1️⃣ root、test1、test2、test3 都是目录,类似于文件夹

 2️⃣ / 是路径分隔符 ,注意区分 windows 下是 \

 3️⃣ 第一个 / 是根目录

3、cd指令

(windows下) 左键双击 = (linux下) cd + ls

Linux 系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。多叉树中非叶子节点一般是目录,叶子节点一般是文件或者是空目录。

语法:cd 目录名

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

常用选项:无

❓ 绝对路径 || 相对路径 ❔

💨小结:

  绝对路径对应的文件一直可以找到,一般是系统或者软件的配置文件中使用

  使用简单,只限当前路径,一般是在命令行中使用

❓ 为什么通过路径能标识 (唯一) 一个文件 ❔

  一个节点可能会存在多个子节点,但是任何一个节点它只有一个父节点,所以多叉树中路径具有唯一性

❗ cd除了加目录名,还有一些别的用法 ❕

 ▶ cd . . :回到上级目录

 ▶ cd - :跳转最近操作的路径

 ▶ cd ~ :进入当前用户的家目录 (登录云后,默认所处的路径)

4、touch指令

语法:touch [选项]… 文件…

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

常用选项:

▶ 文件

 touch 一般只能新建普通的文件,如果是新建一个存在的文件,那么会更新这个文件的时间

❗ 对于时间 ❕

  stat 命令可以查看文件的很多属性,包括时间

  其中 Access 是最近访问的时间;Modify 是文件内容修改时间;Change 是文件属性修改时间

▶ -a 或 --time = atime 或 --time = access 或 --time = use ,只更改存取时间

▶ -c 或 --no-create ,不建立任何文档

▶ -d ,使用指定的日期时间,而非现在的时间

▶ -f ,此参数将忽略不予处理,仅负责解决 BSD 版本 touch 指令的兼容性问题

▶ -m 或 --time = mtime 或 --time = modify ,只更改变动时间

▶ -r ,把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同

▶ -t ,使用指定的日期时间,而非现在的时间


相关文章
|
存储 Linux API
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
在计算机系统的底层架构中,操作系统肩负着资源管理与任务调度的重任。当我们启动各类应用程序时,其背后复杂的运作机制便悄然展开。程序,作为静态的指令集合,如何在系统中实现动态执行?本文带你一探究竟!
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
|
Linux 数据安全/隐私保护
Linux文件权限调整:chmod指令解析
在日常使用或系统管理中,对 `chmod`的熟练应用是提高工作效率和维持系统稳定性的关键。掌握如何给予或限制权限是每个Linux使用者都应该具备的技能。
769 17
|
移动开发 Linux Windows
Linux常用基本指令
对Linux中常用命令,包括文件创建与销毁,压缩与打包,查看搜索文件的方式等指令的介绍
366 1
|
NoSQL Linux 编译器
GDB符号表概念和在Linux下获取符号表的方法
通过掌握这些关于GDB符号表的知识,你可以更好地管理和理解你的程序,希望这些知识可以帮助你更有效地进行调试工作。
583 16
|
Unix Linux
对于Linux的进程概念以及进程状态的理解和解析
现在,我们已经了解了Linux进程的基础知识和进程状态的理解了。这就像我们理解了城市中行人的行走和行为模式!希望这个形象的例子能帮助我们更好地理解这个重要的概念,并在实际应用中发挥作用。
284 20
|
存储 Linux Shell
Linux进程概念-详细版(二)
在Linux进程概念-详细版(一)中我们解释了什么是进程,以及进程的各种状态,已经对进程有了一定的认识,那么这篇文章将会继续补全上篇文章剩余没有说到的,进程优先级,环境变量,程序地址空间,进程地址空间,以及调度队列。
253 0
|
Linux 调度 C语言
Linux进程概念-详细版(一)
子进程与父进程代码共享,其子进程直接用父进程的代码,其自己本身无代码,所以子进程无法改动代码,平时所说的修改是修改的数据。为什么要创建子进程:为了让其父子进程执行不同的代码块。子进程的数据相对于父进程是会进行写时拷贝(COW)。
324 0
|
存储 人工智能 Unix
Linux常见指令汇总
最常见的就是 ll (为ls -l的省略)
473 0
|
存储 Linux 调度
【Linux】进程概念和进程状态
本文详细介绍了Linux系统中进程的核心概念与管理机制。从进程的定义出发,阐述了其作为操作系统资源管理的基本单位的重要性,并深入解析了task_struct结构体的内容及其在进程管理中的作用。同时,文章讲解了进程的基本操作(如获取PID、查看进程信息等)、父进程与子进程的关系(重点分析fork函数)、以及进程的三种主要状态(运行、阻塞、挂起)。此外,还探讨了Linux特有的进程状态表示和孤儿进程的处理方式。通过学习这些内容,读者可以更好地理解Linux进程的运行原理并优化系统性能。
549 4
|
消息中间件 Linux
Linux:进程间通信(共享内存详细讲解以及小项目使用和相关指令、消息队列、信号量)
通过上述讲解和代码示例,您可以理解和实现Linux系统中的进程间通信机制,包括共享内存、消息队列和信号量。这些机制在实际开发中非常重要,能够提高系统的并发处理能力和数据通信效率。希望本文能为您的学习和开发提供实用的指导和帮助。
1113 20