linux os是什么
时间:2023-02-13 11:30
在linux中,OS是指操作系统,是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。OS存在的原因:单纯的硬件计算机,操作起来效率特别低下,难度特别高。 本教程操作环境:linux7.3系统、Dell G3电脑。 前言: OS(操作系统)的学习是很重要的,这里学习操作系统先从Linux开始。 Linux是指令操作的,距离OS更近,更便于我们掌握OS。学习C++,一般从事后端较多,并且Linux对于想要从事后端是非常重要,LInux很大概率就是工作的OS。 操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。 OS存在的原因:单纯的硬件计算机,操作起来效率特别低下,难度特别高。 OS是一款软件,用来进行对软硬件资源进行管理的软件,管理目的:对上,对下,提高操作效率。 现实生活中的操作系统 win7 Mac Android iOS 我们为什么要学习指令呢? 因为所有的操作系统,刚开始的时候都是支持指令操作的,图形化界面是后来才有的,所以指令执行距离OS更近,便于我们更好的掌握OS。 1.ls指令 (1)语法:ls [选项] [目录或文件] (目录或文件不写为当前目录) (2)功能:对于目录,该命令列出该目录下的所有子目录和文件。 对于文件,将列出文件名及其他信息。 (3)常用选项 ① 直接使用ls 只有子目录和文件 ② -l 列出文件的详细信息(可以写成ls -l,也可以写成ll ) ③ -a 列出目录下的所有文件,包括以 . 开头的隐含文件 以 . 开头的文件我们称为隐藏文件,在任意目录下,都会存在两个隐藏文件 .(当前路径) ..(上级路径) ④ -i 输出文件的i节点的索引信息 ⑤ -n 用数字的 UID,GID 代替名称 (4)举例 ls -al 2.pwd指令 (1)语法:pwd (2)功能:显示用户当前所在目录 Linux的路径分割符是:/(斜杠) Window的路径分割符是:\(反斜杠) (3)举例 pwd 3.cd指令 我们一般定位某个文件,是通过路径定位的方式,找到文件的。那为什么我们是通过路径的方式定位文件的呢? Linux的目录结构本质是一颗多叉树(1. 每一个子节点既可以是一个目录(再放目录或者普通文件,递归式的定义),也可以是一个普通文件 2. 这颗多叉树的叶子节点,一定是一个普通文件或者空目录) 因此任何一个节点,可以有多个子节点,但是任何一个子节点,都只有一个父节点。 所以常规的路径定位是具有唯一性的(绝对路径具有唯一性) 除了相对路径,还有绝对路径(相对于当前所处的路径) 如果是日常使用,推荐相对路径 —— 简单 如果是添加配置文件之类,推荐绝对路径 —— 不会出错 (1)语法:cd [目录名] (2)功能:改变工作目录,将当前工作目录改变到指定的目录下。(进入输入的目录) (3)常用选项 ① cd .. 返回上级目录(.为当前目录,..为上级目录) ② cd 绝对路径 ③ cd 相对路径 ④ cd - 返回最近访问目录 ⑤ cd ~ 进入用户家目录(/home/hb) (4)举例 cd .. :返回上级目录 cd /home/hb/code :绝对路径 cd ../test :相对路径 cd - :返回最近访问目录 cd ~ :进入用户家目录 4.touch指令 如果我们创建了一个空文件,在磁盘中会占据空间吗? 要占用 文件有属性数据,也是数据 文件 = 文件内容 + 文件属性 我们要学的所有的文件操作无非两类: ①对文件的内容操作 ②对文件的属性操作 (1)语法:touch [选项] [文件] (2)功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件, (3)常用选项 ① 直接使用touch 创建一个文件 (4)举例 touch test.c 5.mkdir指令 (1)语法:mkdir [选项] [目录名字] (2)功能:在当前目录下创建一个目录 (3)常用选项 -p [路径名称] 可以是一个路径名称,此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录 (4)举例 mkdir dir :创建一个目录 mkdir -p dir1/dir2/dir3 :递归建立多个目录 6.rmdir指令 && rm指令 rmdir是一个于mkdir相对于的指令,mkdir是建立目录,而rmdir是删除目录 (1)语法:rmdir [选项] [目录名字] (2)功能:删除空目录 (3)常用选项 ① -p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除 (4)举例 rmdir dir rmdir -p dir (1)语法:rm [选项] [目录名字] (2)功能:删除文件或目录 (3)常用选项 ① 直接使用rm 删除一个文件或目录(文件都可以删除,但只能删除空目录) ② -r 删除目录及其下的所有文件(可以删除非空目录) ③ -f 强制删除文件,即使文件属性为只读(即写保护) ④ -i 删除前逐一询问确认 (4)举例 rm dir :删除目录 rm test :删除文件 rm -r dir :删除目录下所有文件 rm -rf dir :强制删除目录下所有文件 rm -ir dir :删除目录下所有文件时依次询问 * 通配符:匹配当前目录下的任何内容 rm * :删除当前目录下的所有文件(等价于rm ./*) ./ 当前目录:告知系统,要访问的资源在当前目录下,如果省略,部分情况下,默认就是当前目录 7.man指令 (1)语法:man [选项] 命令 (2)功能:man相当于一个联机手册,Linux的命令有很多参数,我们不可能全都记住,这时候就可以使用man来获取帮助。 (3)常用选项 ① -k 根据关键字搜索联机帮助 ② man man 可以搜索man的相关操作 ③ 数字 输入对应的数字,会去查找不同的命令 man手册: 1 是普通的命令 2 是系统调用,如open(通过这个可以很方便的查到如何调用这个函数,以及需要加说明头文件) 3 是库函数,如printf 4 是特殊文件,也就是/dev下的各种设备文件 5 是指文件的格式,比如password,就会说明这个文件中各个字段的函数 6 是给游戏留的,由各个游戏自己定义 7 是附件和一些变量,比如像environ这种全局变量在这里就由有说明 8 是系统管理用的命令,这些命令只能由root使用,如ifconfigman相当于一个联机手册,Linux的命令有很多参数,我们不可能全都记住,这时候就可以使用man来获取帮助。 (4)举例 man 1 ls man 3 printf 8.cp指令 (1)语法:cp [选项] 源文件或目录 目标文件或目录 (2)功能:复制文件或目录 (3)常用选项 ① 直接使用cp 复制一个文件 ② -r 递归处理,将指定目录下的文件和子目录一并复制 ③ -f 强制复制文件或目录,不论目的文件或目录是否已经存在 ④ -i 覆盖之前先询问 (4)举例 cp file.txt file2.txt cp -r dir1 dir2 cp -rf dir .. 9.mv指令 mv命令是move的缩写,可以用来移动文件或者将文件改名,经常用来备份文件或者目录。 (1)语法:mv [选项] 源文件或目录 目标文件或目录 (2)功能: 根据mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。 ①当第二个参数类型是源文件(源目录)时,mv命令完成文件重命名,此时,源文件只能有一个,它将所给的源文件或目录重命名为给定的目标文件名 ②当第二个参数类型是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中 (3)常用选项 ① 直接使用mv 移动或重命名一个文件或目录 ② -f 如果目标文件已经存在,不会询问直接覆盖 ③ -i 若目标文件已经存在时,会询问是否覆盖 (4)举例 mv file.txt a.txt mv file.txt .. mv dir1 dir2 dir 10.cat指令 (1)语法:cat [选项] [文件] (2)功能:查看目标文件的内容 (3)常用选项 ① -n 输出行编号 (4)举例 cat file.txt cat -n file.txt 除了cat,还有tac,从后往前查看 tac file.txt 这里先介绍一个echo,类似于printf,输出信息到显示器上。 例如:echo "hello world" (1)输出重定向 创建一个文件touch file.txt,然后可以通过echo "hello world" > file.txt,使本来应该写入到显示器的内容,把它写入到文件中(每次都会情况原始文件的内容,进行重新写入) (2)追加重定向 echo "hello Linux" >> file.txt,类似上面的输出重定向,但是这里是两个>,并且它不会清空原始内容,而是在原始文件的结尾进行新增式的写入 (3)输入重定向 cat < file.txt,输入重定向是把本来应该从键盘文件中读取数据的方式,改成从指定的文件中读取 11.more指令 (1)语法:more [选项] [文件] (2)功能:功能类似cat,但是可以手动向下翻 (3)常用选项 ① -n 输出行编号 ② q 退出more (4)举例 more file.txt 12.less指令 (1)语法:less [选项] 文件 (2)功能:类似cat和more,但是功能更强大,可以向上和向下翻(一般都使用less) (3)常用选项 ① -n 输出行编号 ② q 退出less (4)举例 less file.txt 13.head指令 (1)语法:head [选项] [文件] (2)功能:显示文件开头(默认显示开头10行) (3)常用选项 ① -n<行数> 想要显示的行数 (4)举例 head -20 file.txt 14.tail指令 (1)语法:rm [选项] [文件] (2)功能:显示末尾开头(默认显示末尾10行) (3)常用选项 ① -n<行数> 想要显示的行数 (4)举例 tail -20 file.txt 如果我们想要查看文件的中间部分,比如一个1万行的文本,我们想要查看[5000, 5030]行的信息,我们怎么办呢? ①创建临时文件 通过head -5030 file.txt > temp.txt,先得到一个临时文件,然后在tail -30 temp.txt,我们才能看到[5000, 5030]中的信息了。 比较复杂。 ②管道 管道是用来级联多个命令,来完成流水线式的数据处理工作的。(可以传输数据资源) | 这个就是管道 这么写 head -5030 file.txt | tail -30 就可以通过管道来完成查看了。 15.date指令(时间相关指令) (1)语法:date [选项] [格式] (2)功能:指定格式显示时间或者显示时间戳 (3)常用选项 ① 在显示上,使用者可以设定想要显示出的格式,格式设定为一个+后接标记,其中常用的标记列表如下: %H:小时 %M:分钟 %S:秒 %X:相当于%H:%M:%S %d:日 %m:月份 %Y:年份 %F:相当于%Y-%m-%d ② 时间戳 时间->时间戳 date+%s 时间戳->时间 date -d@时间戳 时间戳是从1970年1月1日开始所经过的秒数,不考虑闰秒 (4)举例 date +%Y-%m-%d_%H:%M:%S date +%s 16.cal指令 (1)语法:cl [选项] [年份] (2)功能:显示日历 (3)常用选项 ① 直接使用就是当前月份 ② -3 显示前一个月,当前月,下一个月的月历 ③ -y 显示当前年份的年历 (4)举例 cal -3 cal -y 2020 17.find指令 find命令在目录结构中搜索文件,并执行指定的操作 Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,因次它的选项也很多。 (1)语法:find [查找位置] [选项] [查找] (2)功能:用于在文件树中查找文件,并作出相应的处理(可能访问磁盘) (3)常用选项 ① -name 按照文件名查找文件 (4)举例 find /usr/include/ -name stdio.h 18.grep指令 (1)语法:grep [选项] 搜寻的字符串 文件 (2)功能:在文件中搜索字符串,将找到的行打印出来(使用正则表达式搜索) (3)常用选项 ① 直接使用grep,打印出带有想要字符串的行 ② -i 忽略大小写的不同,将大小写视为相同 ③ -n 输出行号 ④ -v 反向打印,打印出没有想要搜寻的字符串的那些行 (4)举例 grep 'hello' file.txt grep -i 'HeLlo' file.txt grep -iv 'HeLlo' file.txt 19.zip/unzip指令 1.zip: (1)语法:zip 定义压缩文件名.zip [目录或文件] (2)功能:将目录或文件压缩成zip格式 (3)常用选项 ① 直接使用zip 压缩一个文件 ② -r 可压缩一个目录下的所有文件 (4)举例 zip test.zip package zip -r test.zip tar_package zip -r test.zip -d tar_package 2.unzip (1)语法:unzip 压缩文件 (2)功能:解压缩 (3)常用选项 ① 直接使用unzip 解压缩 ② -d 指定压缩到哪一个路径下 (4)举例 unzip test.zip unzip test.zip -d /home 20.tar指令 (1)语法:tar [选项] [文件或目录] (2)功能:压缩文件或解压缩 (3)常用选项 ① -c 建立一个压缩文件 ② -z 判断是否具有gzip的属性,是否需要用gzip压缩 ③ -f 使用档名,在f之后要立即接档名,不能再加参数 ④ -x 解开一个压缩文件 ⑤ -t 查看压缩包里面的文件 ⑥ -v 压缩的过程中显示文件 ⑦ -C 解压到指定目录下 (4)举例 tar czf test.tgz tar_package // 压缩文件 tar xzf test.tgz // 解压缩 tar xzf test.tgz -C /home // 解压缩到指定目录 tar xzvf test.tgz 解压缩过程显示文件 21.bc指令 (1)语法:bc [数字][符号][数字] (2)功能:计算器 (3)常用选项 ① 直接使用bc 计算 (4)举例 bc 1+2 22.uname指令 (1)语法:uname [选项] (2)功能:用来获取电脑和操作系统的相关信息(可用来显示linux主机所用的操作系统的版本、硬件名称等基本信息) (3)常用选项 ① -r 显示内核版本 ② -a 详细输出所有信息,依次为内核名称、主机名、内核版本号、内核版本、硬件名、处理器类型、硬件平台类型、操作系统名称 (4)举例 uname -r uname -a 23.热键 ① Tab:命令自动补齐 ② Ctrl+c:终止失控程序 ③ Ctrl+d:快速退出账户 ④ Ctrl+r:搜索历史命令 24.关机指令 (1)语法:shutdown [选项] (2)功能:关机 (3)常用选项 ① -h 将系统的服务停掉后,立即关机 ② -r 在将系统的服务停掉之后就重重新启动 ③ -t 在-t后加秒数,表示过多少秒关机 (4)举例 shutdown -h 1.介绍 Linux严格意义上说的是一个操作系统,我们称之为”核心(kernel)“,但是一般用户不能直接使用kernel,而是通过kernel的”外壳“程序,也就是shell,来与kernel沟通。(shell是一种外壳程序) 2.作用 外壳可以保护OS系统,降低操作OS的成本, shell外壳:传递用户指令,交给OS,OS执行完毕,结果交给shell,shell再交给用户。 从技术角度,Shell的简单定义:命令行解释器包含: ①将使用者的命令翻译给kernel处理 ②同时,将核心的处理结果翻译给使用者 Linux中,外壳就是命令行解释器。 Window中,外壳就是图形化界面 在centos 7中常用的命令行解释器(shell),叫做bash Linux下有两种用户:①超级用户(root)②普通用户 ①超级用户:可以在Linux系统下做任何事情,不受限制 ②普通用户:在Linux下做有限的事情 ③超级用户的命令提示符是"#",普通用户的命令提示符是"$" 命令:su [用户名] 功能:切换用户 从普通用户切换到root用户,使用su root或su - ,从root用户切换到普通用户user,使用su user 举例: 相关推荐:《Linux视频教程》 以上就是linux os是什么的详细内容,更多请关注gxlsystem.com其它相关文章!一.OS(操作系统)基本概念
二.Linux常见指令
Ⅰ. rmdir:
Ⅱ. rm(一般这个用的较多)
重定向:
管道:
三.shell命令及运行原理
四.Linux权限概念
su -
su user