文章目录
00)前言
在计算机发展的历史中,键盘是要比鼠标先发明出来的,那么在有键盘但没有鼠标的年代,人们是如何和计算机打交道的呢,答案是通过命令行。
有了鼠标和图形界面的操作系统之后,商用的面向普通用户的操作系统才开始全球发展。
为什么要学习命令行呢,因为更接近原系统,这也是衡量程序员专业与否的指标之一。
01)ls 指令
语法:ls [选项] [目录或文件名]
功能:(list files):对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
常用选项:
-a 列出目录下的所有文件,包括以 . 开头的隐含文件。
-l 列出文件的详细信息。
-d 将目录像文件一样显示,而不是显示其下的文件。 如:
ls -d [指定目录]
-n 用数字的 UID,GID 代替名称。(UID:用户ID, GID:组ID)
【给用户看到的是名字,实际上计算机处理的是这个数字。】
-i 输出文件的 i 节点的索引信息。 如:
ls –ai [指定文件]
-F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表
示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。(目录类型识别)-r 对目录反向排序。
-t 以时间排序。
-s 在文件名前输出该文件的大小。(大小排序,如何找到目录下最大的文件)
-R 列出所有【子目录】下的文件。(递归)
-1 一行只输出一个文件。
02)pwd 指令
语法:pwd
功能:(print work directory):显示用户当前所在的目录
03)cd 指令
Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。
非叶子节点一般是目录,叶子节点一般是文件/空目录。
语法:cd [目录名]
功能:(change directory):切换工作目录。将当前工作目录切换到指定的目录下。
使用举例:
绝对路径和相对路径
cd /home/ll/lesson2/file1 #绝对路径:放之四海而皆准,不管在哪里,该路径对应的文件一直可以找到(一般在系统或者软件的配置文件中使用) cd lesson2/file1 #相对路径:使用简单,不过只限于当前路径(一般在命令行上使用的多)
返回上级目录:
cd ..
进入根目录:
cd /
进入用户家目录:
cd ~
(默认登录成功时,所处的路径)返回最近访问目录
cd -
04)touch 指令
语法:touch [选项] [文件名]
功能:touch命令参数可更改文档或目录的时间属性,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项:
- -a 或–time=atime或–time=access或–time=use只更改存取时间。
- -c 或–no-create 不建立任何文档。
- -d 使用指定的日期时间,而非现在的时间。
- -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
- -m 或–time=mtime或–time=modify 只更改变动时间。
- -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
- -t 使用指定的日期时间,而非现在的时间。
05)stat 指令
语法:stat [文件名]
功能:以文字的格式来显示文件的 inode 的内容
使用举例:
查看文件修改时间:
06)mkdir 指令(重要)
语法:mkdir [选项] [dirName]
功能:(make directory):在当前目录下创建一个名为 “dirname”的目录
常用选项:
- -p,–parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。
举例:
递归创建多个目录:
【补充一个小知识】Linux下如何查看文件类型:
windows区分文件类型用的是后缀,如 .exe / .docs / .pptx / .html
Linux区分文件类型,一般不通过后缀,通过属性列的第一个字符!
07)tree 指令
语法:tree [目录名]
功能:用树状图列出指定目录下的所有文件,包括子目录里的文件。
安装:linux中使用命令 yum install -y tree
进行安装
使用举例:
08)rmdir 指令、rm 指令(重要)
(1)rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除空目录。
语法:rmdir [选项] [dirName]
适用对象:具有当前目录操作权限的所有使用者
功能:(remove directory):删除**空目录**
常用选项:
-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
(2)rm命令可以同时删除文件或目录
语法:rm [-f / -i / -r / -v] [dirName/dir]
适用对象:所有使用者
功能:删除普通文件或目录
常用选项:
-f 即使文件属性为只读(即写保护),也直接删除。(强制删除)
比如在普通用户中删除root用户创建的文件
-r 删除目录及其下所有文件。(递归删除)(rm不能直接删除目录,需要加上 -r 选项)
-rf 强制并递归删除。(慎用!)
-i 删除前逐一询问确认。
【注】:
*
是通配符,代表当前目录中的所有文件。
09)man 指令(重要)
Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。
访问Linux手册页的命令是man
语法:man [选项] [要查看的命令]
常用选项及使用:
该手册如下有8个章节,一般常用的也就是前3个:
1 是普通的命令
2 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文
件)
3 是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件
5 是指文件的格式,比如passwd,就会说明这个文件中各个字段的含义
6 是给游戏留的,由各个游戏自己定义
7 是附件还有一些变量,比如向environ这种全局变量在这里就有说明
8 是系统管理用的命令,这些命令只能由root使用,如ifconfig使用方法:
man ls #查看ls命名手册 man 3 printf #
-k 根据关键字搜索联机帮助。
num 只在第num章节找。
-a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。
未完待续…………