【Linux_】常见指令(一)
心有所向,日复一日,必有精进
专栏《Linux_》
作者:沂沐沐
目录
前言
简单介绍一下发展历程:
Linux系统1991年10月5日,赫尔辛基大学的一名研究生Linus Benedict Torvalds在一个Usenet新闻组(comp.os.minix)中宣布他编制出了一种类似UNIX的小操作系统,叫Linux。新的操作系统是受到另一个UNIX的小操作系统——Minix的启发,该系统是由一名叫Andrew S Tanenbaum的教师开发的。读者也许猜想所发布的这个系统应该是Linux的0.01版本,实际上不是这样。真正的Linux 0.01版本并没有被发布,原因是0.01版本不实用。 Linus仅仅在第一个Linux的FTP站点(ftp://nic.funet.fi)上提供过这个版本的的源代码。
Torvalds于10月5日发布的这个Linux版本被称为0.02版,它能够运行GNU Bourne Again Shell(bash)和GNU的C编译程序(gcc)以及为数不多的其它语言。 Torvalds绝对没有想到他设想的一种能够针对高级业余爱好者和黑客们的操作系统已经产生,这就是人们所称的Linux。;
Linux发布时的版本是0.02,后来又有0.03版,然后又跳到0.10版。因为世界各地越来越多的程序员都开始开发Linux,它已经达到0.95版。这就意味着正是公布1.0版本的时间已经为期不远了。正式的1.0版本是在1994年公布的
我们在钦佩大佬同时,我们也要开始学习Linux了,让我们开始吧!
什么是操作系统?
ps:知识浅显理解
如何理解文件呢?
文件本身
如果我们创建了一个空文件,是否占用磁盘空间?
首先,内存属于易失性存储器,在断电之后不会存储数据,所以文件一般存储在磁盘;
但是创建一个空文件会不会占磁盘空间呢?
我们创建了一个文本文件,我们可以看到大小标注为0kb
诶?
但是这个空文件是要占用磁盘空间的,该处标识的是文件内容的大小,但是文件的大小,修改时间等等,也就是文件的属性
每个文件 = 文件内容+文件属性
文件属性也是数据,也需要存储磁盘,所以创建一个空文件也是需要占用空间的;
文件之间(普通文件VS目录)
目录就像Windows的文件夹,存储普通文件;
在Windows下\就是路径分隔符
Windows:文件夹里面可以再放文件夹,Linux目录下,也可以存放目录,
几乎任何操作系统文件的目录组织结构是树形结构
在这棵树形结构中,叶子结点可能是普通文件也可能是空目录,路上结点必然是目录;
我们常用路径来标识一个文件,路径具有唯一性;
文件名字可以重复,但是不能再同一目录
从根目录到文件,这叫绝对路径,绝对路径具有唯一性,
Linux下的基本指令
写指令是做什么??等同于在Windows上学基本操作,但是Windows图形化界面,而Linux是命令行;
pwd指令
语法: pwd
功能:显示用户当前所在的目录
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 | 一行只输出一个文件 |
这里补充,以.开头的文件,在Linux下,我们称为隐藏文件;
ls默认不显示隐藏文件;
带点开头是隐藏目录,但是这个我没有创建,代表什么意思呢?
cd是打开指令,我们发现cd . 后没有报错,我们任然在当前目录下,cd ..的时候我们发现回退到了上级路径;所以 .为当前路径;..上级路径
现在目前先知道 ll指令和ls -l 指令是效果是一样的;
-d 不进入目录显示本身
ps:这里大家试试效果,目前不必深入;
cd指令
语法:cd 目录名
功能:改变工作目录。将当前工作目录改变到指定的目录下。
cd .. | 返回上级目录 |
cd /home/litao/linux/ | 绝对路径 |
cd ../day02/ | 相对路径 |
cd ~ | 进入用户家目 |
cd - | 返回最近访问目录 |
我们发现当回退时走到/目录时无法在回退了
在Linux下,/就是根目录
开始指令之前,我们了解绝对指令,我们看见绝对指令具有唯一性,我们也可以使用相对路径,
相对路径就是所需文件相对于当前目录所在位置所处位置,如果相对出现了问题容易出错;
日常使用相对路径较多,绝对路径一般在配置文件中使用;
whoami指令是看到谁在使用系统,root是比较特殊的,一般用户登录都在家目录;
Windows和Linux都是多用户操作系统;
tree指令
语法:tree .
功能:以树状结构显示当前目录。
安装tree命令,在root下:
yum install -y tree
touch指令
语法:touch [选项]... 文件...
功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
-a 或--time=atime或--time=access或--time=use | 只更改存取时间。 |
-c 或--no-create | 不建立任何文档。 |
-d | 使用指定的日期时间,而非现在的时间。 |
-f | 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。 |
-m 或--time=mtime或--time=modify | 只更改变动时。 |
-r | 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。 |
-t | 使用指定的日期时间,而非现在的时间 |
注意touch只能创建一个普通文件,不能创建一个目录;
这是三个文件时间的,有什么区别呢?(这里只是浅显理解)
mkdir指令(重要)
语法: mkdir [选项] dirname...
功能:在当前目录下创建一个名为 “dirname”的目录
- -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;
- mkdir –p test/test1 : 递归建立多个目录
总结
这里只是介绍了冰山一角,我们下次再见!