手把手教你使用 Linux常用命令

本文介绍了Linux操作系统的起源、结构及核心组件,详细讲解了Linux的内核、Shell、文件系统和应用程序,以及如何管理和查看文件目录等内容。

Linux 操作系统

Linux 操作系统简介

1991 年 10 月,Linus Torvalds(Linux 之父)在赫尔辛基大学接触 UNIX,他希望能在自己的电脑上运行一个类似的操作系统。可是 UNIX 的商业版本非常昂贵,于是他从 MINIX 开始入手,计划开发一个比 MINIX 性能更好的操作系统。很快他就开始了自己的开发工作。他第一次发行的版本迅速吸引了一些黑客。尽管最初的 Linux 并没有多少用处,但由于一些黑客的加入使它很快就具有了许多吸引人的特性,甚至一些对操作系统开发不感兴趣的人也开始关注它。

Linux 本身只是操作系统的内核。内核是使其它程序能够运行的基础。它实现了多任务和硬件管理,用户或者系统管理员交互运行的所有程序实际上都运行在内核之上。其中有些程序是必需的,比如说,命令行解释器(shell),它用于用户交互和编写 shell 脚本。 Linux 没有自己去开发这些应用程序,而是使用已有的自由软件。这减少了搭建开发环境所需花费的工作量。实际上,他经常改写内核,使得那些程序能够更容易地在 Linux 上运行。许多重要的软件,包括 C 编译器,都来自于自由软件基金 GNU 项目。GNU 项目开始于 1984 年,目的是为了开发一个完全类似于 UNIX 的免费操作系统。为了表扬 GNU 对 Linux 的贡献,许多人把 Linux 称为 GNU/Linux(GNU 有自己的内核)。

Linux 操作系统结构

Linux系统一般有4个主要部分:

内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。
在这里插入图片描述
和 DOS 等操作系统不同,Linux 操作系统中单独的文件系统并不是由驱动器号或驱动器名称(如 A: 或 C: 等)来标识的。相反,和 UNIX 操作系统一样,Linux 操作系统将独立的文件系统组合成了一个层次化的树形结构,并且由一个单独的实体代表这一文件系统。Linux 将新的文件系统通过一个称为“挂装”或“挂上”的操作将其挂装到某个目录上,从而让不同的文件系统结合成为一个整体。Linux 操作系统的一个重要特点是它支持许多不同类型的文件系统。Linux 中最普遍使用的文件系统是 Ext2,它也是 Linux 土生土长的文件系统。但 Linux 也能够支持 FAT、VFAT、FAT32、MINIX 等不同类型的文件系统,从而可以方便地和其它操作系统交换数据。由于 Linux 支持许多不同的文件系统,并且将它们组织成了一个统一的虚拟文件系统.
虚拟文件系统(VirtualFileSystem,VFS):隐藏了各种硬件的具体细节,把文件系统操作和不同文件系统的具体实现细节分离了开来,为所有的设备提供了统一的接口,VFS提供了多达数十种不同的文件系统。虚拟文件系统可以分为逻辑文件系统和设备驱动程序。逻辑文件系统指Linux所支持的文件系统,如ext2,fat等,设备驱动程序指为每一种硬件控制器所编写的设备驱动程序模块。
虚拟文件系统(VFS)是 Linux 内核中非常有用的一个方面,因为它为文件系统提供了一个通用的接口抽象。VFS 在 SCI 和内核所支持的文件系统之间提供了一个交换层。即VFS 在用户和文件系统之间提供了一个交换层。

Linux 文件与目录管理

我们知道Linux的目录结构为树状结构,最顶级的目录为根目录 /。
其他目录通过挂载可以将它们添加到树中,通过解除挂载可以移除它们。

在这里插入图片描述

绝对路径:
路径的写法,由根目录 / 写起,例如: /usr/share/doc 这个目录。
相对路径:
路径的写法,不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd …/man 这就是相对路径的写法啦!

Linux 常用命令

处理目录的常用命令

接下来我们就来看几个常见的处理目录的命令吧:

  • ls: 列出目录
  • cd:切换目录
  • pwd:显示目前的目录
  • mkdir:创建一个新的目录
  • cp: 复制文件或目录
  • rm: 移除文件或目录
  • mv: 移动文件与目录,或修改文件与目录的名称
  • 你可以使用 man [命令] 来查看各个命令的使用文档,如 :man cp

Linux 文件内容查看

1、cat: [root@hw test]# cat detail.txt
		cat --help 可查看参数说明
		参数说明:
		-n 或 --number:由 1 开始对所有输出的行数编号。
		-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
		-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
		-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
		-E 或 --show-ends : 在每行结束处显示 $。(常用来调错,查看文本中有错误字符)
        -T 或 --show-tabs: 将 TAB 字符显示为 ^I。
		-A, --show-all:等价于 -vET。
		-e:等价于"-vE"选项;
		-t:等价于"-vT"选项
2、more: [root@hw temp]# more myinfo.txt
		参数:
		-num 一次显示的行数
		-d 提示使用者,在画面下方显示 [Press space to continue, 'q' to quit.] ,如果		使用者按错键,则会显示 [Press 'h' for instructions.] 而不是 '哔' 声
		-l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能
		-f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两		行或两行以上)
		-p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
		-c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
		-s 当遇到有连续两行以上的空白行,就代换为一行的空白行
		-u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
		+/pattern 在每个文档显示前搜寻该字串(pattern),然后从该字串之后开始显示
		+num 从第 num 行开始显示
		fileNames 欲显示内容的文档,可为复数个数

3、less
		参数说明:
		-b <缓冲区大小> 设置缓冲区的大小
		-e 当文件显示结束后,自动离开
		-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
		-g 只标志最后搜索的关键词
		-i 忽略搜索时的大小写
		-m 显示类似more命令的百分比
		-N 显示每行的行号
        -o <文件名> 将less 输出的内容在指定文件中保存起来
		-Q 不使用警告音
		-s 显示连续空行为一行
		-S 行过长时间将超出部分舍弃
		-x <数字>"tab"键显示为规定的数字空格
		/字符串:向下搜索"字符串"的功能
		?字符串:向上搜索"字符串"的功能
		n:重复前一个搜索(与 / 或 ? 有关)
		N:反向重复前一个搜索(与 / 或 ? 有关)
		b 向后翻一页
		d 向后翻半页
		h 显示帮助界面
		Q 退出less 命令
		u 向前滚动半页
        y 向前滚动一行
		空格键 滚动一页
		回车键 滚动一行
		[pagedown]: 向下翻动一页
		[pageup]: 向上翻动一页

4、 [root@hw test]# head detail.txt
	查看前两行:
	[root@hw test]# head -2 detail.txt
	查看后两行:
	[root@hw test]# tail -2 detail.txt
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值