• Linux 的常见命令
    • 1. ls
    • 2. pwd
    • 3. cd
    • 4. touch
    • 5. cat
    • 6. echo
    • 7. mkdir
    • 8. rm
    • 9. mv
    • 10. cp
    • 11. man
    • 12. less
    • 13. head
    • 14. tail
    • 15. vim
    • 16. grep
    • 15. ps
    • 16. netstat
  • Linux 权限
    • 修改文件权限

Linux 的常见命令

白色 : 普通文件
蓝色: 目录
红色 : 压缩包
绿色 : 可执行文件

复制: ctrl + insert
粘贴: shift + insert
清屏: ctrl + l
取消当前命令重新输入: ctrl + c

1. ls

语法: ls[选项][目录或文件]功能: 对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。


记住,是小写的 L ,表示使用列表的方式来列出目录中的内容,ls -l 这是常用的命令,一般也是可以使用 ll 来替代

ls 列出当前目录中包含的文件和目录,类似于在 windows 上上双击某个目录,把它打开,看看目录里面有啥

ls [路径]

这里的 / 是 Linux 上的特殊目录,称为”根目录”,相当于 windows 的”此电脑”,这里的这些目录,就相当于”系统文件”

常用选项:
-a 列出目录下的所有文件,包括以 . 开头的隐含文件。
-d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
-k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
-l 列出文件的详细信息。
-r 对目录反向排序。
-t 以时间排序。
-R 列出所有子目录下的文件(递归)

2. pwd

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

他就是能告诉我们当前是在哪个目录里,因为我们在使用命令的时候,有的时候,目录是比较复杂的,容易不记得自己在哪里(迷路了)

显示了当前目录所对应的绝对路径,在windows 上,就是以盘符开头的路径的绝对路径,在 Linux 上,是以 / 开头(根目录)就是绝对路径

3. cd

Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。

语法: cd 目录名功能: 改变工作目录,将当前工作目录改变到指定目录下

cd 后面要跟上一个路径,这个路径可以是绝对路径,也可以是相对路径,cd 就相当于是鼠标双击目录进行切换了

当然,cd ./root 也可以简写为 cd root

还有:
cd . . : 返回上级目录
cd ~:进入用户家目
cd -:返回最近访问目录

4. touch

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

5. cat

语法: cat[选项][文件]功能: 查看目标文件的内容-n 可以对输出的所有行编号

6. echo

语法: echo [内容] > [文件名]功能: 打印内容到控制台,也可以用于写文件

7. mkdir

语法: mkdir [选项] dirname..功能: 在当前的目录下创建一个名为"dirname"的目录

常用选项:
-p,--parents 可以是一个路径名称,此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多级目录

创建多个目录后可能会搞混,可用 tree 命令来分清

可能第一次敲tree会报错,找不到这个命令,前面我们所讲到的命令是 他自己自带的,而 tree 他是属于第三方提供的命令,是需要我们单独去下载安装的需要的命令是:yum install tree
这个yum 就相当于是”应用商店”,称为”包管理器”

8. rm

语法: rm[-f-i-r-v] [dirName/dir]功能: 删除文件或目录

常用选项:
-f 即使文件属性为只读(即写保护),直接删除
-i 删除前逐一询问确认
-r 删除目录及其下所有文件

删除操作都是很危险的操作,一定要谨慎谨慎再谨慎!!!特别是rm -rf /这个命令,他是直接把你整个磁盘上的文件都删除了,包括系统文件(你自己启动的所需要的文件),所以一定要谨慎使用删除!!!(跟我们之前讲的删除数据库一样,你删了,直接就没有了)
Linux 里面的删除,是真正的删除了,文件是无法复原的,他不像我们常接触的windows,你删了之后还有一个回收站可以让你后悔…
(其实也不是删除后就完全恢复不了了,有补救措施的,不过不是我们搞定,这个问题可以去找对应硬盘厂商帮忙..彻底删除的最好办法就是-->直接销毁)

9. mv

语法: mv [选项] 源文件或目录 目标文件或目录功能:第一个表示要移动的文件/目录 , 第二个表示要移动的目标位置,这俩参数 绝对路径/相对路径都可以

常用选项:
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

注意mv也可以重命名

10. cp

语法:cp [选项] 源文件或目录 目标文件或目录功能:复制文件或目录

注意cp 直接只能拷贝文件,如果需要拷贝目录,需要加上 -r 参数

常用选项:
-f 或 –force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i 或 –interactive 覆盖文件之前先询问用户
-r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

11. man

语法: man [选项] 命令功能:查看其他命令帮助手册

常用选项:
-k 根据关键字搜索联机帮助
num 只在第num章节找
man man 能够看到 man 手册中的若干个章节及其含义

查看 man ls退出就按 q就行

当然,现在用百度来查也是相当快的…

12. less

语法: less [参数] 文件功能:查看文件内容. 不会立刻把所有文件内容加载到内存中. 也能进行查找

常用选项:
j k / 方向键: 向上向下滚动屏幕.
-N 显示每行的行号
/字符串:向下搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ” />

13. head

语法:head [参数]... [文件]... 功能:head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。

常用选项:
-n 显示的行数

14. tail

语法: tail [必要参数] [选择参数] [文件] 功能:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

常用选项:
-f 循环读取
-n 显示行数

15. vim

vim 是一个知名的文本编辑器. 前面学习的 cat, less, head, tail 等命令只能查看文本, 不能编辑文本. 使用 vim 就可以进行编辑了(但是想要用熟练,那是需要大量练习的),这里只介绍简单的 vim 操作

一: 创建文件/打开文件:vim [文件名]
有这个文件就打开他,没有就自动创建一个

二: 使用 vim 编辑文件内容
刚进入会发现 想输入内容并没有反应,因为在我们进去后此时默认是"普通模式"(normal mode),普通模式下,键盘按键他不是表示编辑框输入的内容,而是表示特殊含义的快捷键,要想编辑内容,还得进入"插入模式"(insert node),键盘才能输入内容,我们只需要按下小写字母 i 键就可以进入插入模式了

此时左下角出现INSERT就是进入插入模式,就可以输入内容了

三: 使用 vim 进行保存退出
我们想要保存退出发现并没有什么 x 的可以关闭,这时候也不要乱按, 如果你按了一个 ctrl + s来保存,那是不行的,在vim中,ctrl + s不是保存,同时 他是 xshell 的快捷键,功能是冻结屏幕(怕东西打得太快反应不过来,解除冻结的话按ctrl + q就行了)

1)先从插入模式回到普通模式,按下 esc 即可
2)输入:wq再按回车即可保存退出(w => write 写(保存) ,q => quit(退出))
注意:如果文件没变,:q,是能直接退出的,如果文件改变,:q会报错,不让你退出,:q!才是强制退出(不保存),还有就是:x效果和:wq是等价的

想要详细了解 vim 操作的可以进入 他自带的 官方”交互式”教程:vimtutor,里面有详细的介绍

16. grep

语法:grep [参数]... [文件]...功能:用于查找文件中是否包含指定字符串, 并显示对应的行

常用选项:
-n 显示的行数
-w 全字匹配. 要求整个单词都完全相同的结果才能匹配出来, 而不仅仅是一个单词的一部分.
-r 递归查找. 可以搜索多级目录下的所有文件.
--color 高亮查找到的结果
--include 指定查找某些文件
--exclude 指定排除某些文件

15. ps

语法:ps [参数]...功能:用于查看当前系统上运行的进程

例如:
ps aux # 显示系统上所有的进程
ps aux | grep “进程名”
ps aux | grep “进程id”

常用选项:
a 显示一个终端的所有进程
u 以用户为主的格式来显示程序状况
x 显示所有程序,不以终端机来区分

16. netstat

语法:netstat [参数]...功能:查看系统上的网络状态

例如:
netstat -anp
netstat -anp | grep “进程名”
netstat -anp | grep “端口号”

常用选项:
-a 显示所有正在或不在侦听的套接字
-n 显示数字形式地址而不是去解析主机、端口或用户名
-p 显示套接字所属进程的PID和名称

Linux 权限

权限 就是为了限制你的一些操作,比如像 rm 这样的操作是非常危险的,能力越大,责任就越大,一旦给一个新手使用 rm 这种危险的操作影响是很大的

这里主要围绕文件和目录来展开:


前面的部分就描述了文件/目录的权限,在这一组字母中,涉及到了三个操作和三个角色 (最前面的一个字母,d 表示目录文件, - 表示普通文件,和权限没有关系,是文件类型),后面的 9 个英文字母,分成三个一组

文件类型:
d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件

基本权限
r:表示可读
w:表示可写
x:表示可执行
-:表示没有对应的权限
比如:rwx:可读,可写,可执行,rw-:可读,可写,不可执行

三种角色:
每一行后面九个英文字母分成三组:
例如:
第一组:rwx:文件拥有者的权限:可读可写可执行
第二组:r-x:同组用户的权限:可读不可写可执行
第三组:r-x:其他用户的权限:可读不可写可执行
当然,根据这三组角色,是可以分别设置不同的权限的,至于你自己要怎么设置,每一组要设置成啥,都看你自己的意愿,看实际需求

修改文件权限

功能:设置文件的访问权限格式:chmod [参数] 权限 文件名