文章目录
- 1.前言
- 1.1 定义
- 1.2 特点
- 2.常用命令介绍
- 2.1 ls
- 2.2 pwd
- 2.3 cd
- 2.4 touch
- 2.5 cat
- 2.6 mkdir
- 2.7 rm
- 2.8 cp
- 2.9 mv
- 2.10 man(联机手册)
- 2.11 vim
- 2.12 grep
- 2.13 ps
- 2.14 netstat
1.前言
1.1 定义
Linux
是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX
和Unix
的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix
工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux
继承了Unix
以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
1.2 特点
Linux
系统下一切皆文件,他/目录
中存放这系统文件如下图。Linux
系统主要是使用命令来操作系统的,这样的好处是,Windows
系统上需要几步的操作,在Linux
系统上可能就需要一行命令就搞定了,大大的提高工作效率。
2.常用命令介绍
2.1 ls
语法: ls [选项] [目录或文件]
功能: 对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
常用选项:
- -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
- -d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
- -k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
- -l 列出文件的详细信息。
- -r 对目录反向排序。
- -t 以时间排序。
- -R 列出所有子目录下的文件。(递归)
举例:
2.2 pwd
语法: pwd
功能: 显示用户当前所在的目录
举例:
2.3 cd
语法: cd 目录名
功能: 改变工作目录。将当前工作目录改变到指定的目录下.
其他选项:
- cd … : 返回上级目录
- cd ~:进入用户家目
- cd -:返回最近访问目录
举例: cd /root/
这就进入到root目录下了 。
Linux的目录结构,它类似一个N叉树的形式。
2.4 touch
语法: touch [选项]… 文件…
功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
举例: touch test.txt
2.5 cat
语法: cat [选项] [文件]
功能: 查看目标文件的内容
常用选项:
- -n 输入所在行号
举例:cat test.txt
2.6 mkdir
语法: mkdir [选项] dirname
功能: 在当前目录下创建一个名为 “dirname”的目录。
常用选项:
-p,–parents 可以是一个路径名称;此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好哪些尚不存在的目录,即一次可以建立多级目录。
举例:
mkdir –p test/test1
解读: 递归建立多个目录
2.7 rm
语法: rm [选项] [dirName/dir]
功能: 删除文件或目录
常用选项:
- -f 即使文件属性为只读(即写保护),仍直接删除
- -i 删除前逐一询问确认
- -r 删除目录及其以下全部文件
举例: rm test.txt
这里删除的时候,它下面有一个提示语,我们需要输入y/yes
来确认。
重要注意事项❗❗❗
千万不要运行 rm -rf /
, 尤其是在公司的生产服务器上,他会将系统中的所有文件全部删除。
2.8 cp
语法: cp [选项] 源文件或目录 目标文件或目录
功能: 复制文件或目录
说明: cp
指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则他会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。
常用选项:
- -f或 --force 强行复制文件或目录,无论目的文件或目录是否已经存在
- -i 或 --interactive 覆盖文件之前先询问用户
- r 递归处理,将指定目录下的文件于子目录一并处理。若源文件或目录的形态不属于目录或符号链接,则一律视为普通文件处理
- -R 或 -recursive 递归处理,将指定目录下的文件及子目录一并处理
举例:
cp test1.txt test2.txt
解读:将test1.txt
文件拷贝一份成为test2.txt
文件
2.9 mv
语法: mv [选项] 源文件或目录 目标文件或目录
功能:
- 视
mv
命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。 - 当第二个参数类型是文件时,
mv
命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。 - 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,
mv
命令将各参数指定的源文件均移至目标目录中。
常用选项:
- -f force 强制的意思,如果目标文件已经存在,不会询问而是直接覆盖
- -i 若目标文件已经存在时,会询问是否覆盖
举例:
mv test1.txt test2.txt
解读:test1.txt
会被test2.txt
覆盖。
2.10 man(联机手册)
Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。
语法: man [选项] 命令
常用选项:
- -k 根据关键字搜索联机帮助
- num 只在第num章节找
- man man 能够看到 man 手册中的若干个章节及其含义
举例: man ls
2.11 vim
vim 是一个知名的文本编辑器. 前面学习的 cat命令只能查看文本, 不能编辑文本. 使用vim 就可以进行编辑了。
vim 就相当于 Windows 的记事本. 只不过功能比记事本强大一些.
1)创建文件 / 打开文件
vim [文件名]
2)进入插入模式
vim
打开文件后默认是普通模式. 普通模式下键盘的按键表示一些特殊功能的快捷键. (例如按下 j 并不是输入字母 “j”, 而是表示光标往下移动一行). 需要进入插入模式才能进行文本编辑.
使用 i 键可以进入到插入模式. (左下角提示 --INSERT-- ) 然后就可以像记事本一样正常编辑了.
3)保存
在插入模式下不能保存文件, 需要先回到 普通模式 . 按下 Esc
回到普通模式.
在普通模式下输入 :w
, 再按下回车, 即可保存文件
4)退出
在插入模式下不能退出, 需要先回到 普通模式.
在普通模式下输入 :q
, 再按下回车, 即可退出。
也可以直接使用
:wq
同时执行保存和退出
vim模式切换图:
2.12 grep
语法: grep [参数] [文件]
功能: 用于查找文件中是否包含指定字符串,并显示对应的行。
选项:
- -n<行数> 显示的行数
- -w 全字匹配. 要求整个单词都完全相同的结果才能匹配出来, 而不仅仅是一个单词的一部分
- -r 递归查找. 可以搜索多级目录下的所有文件
- –color 高亮查找到的结果
- –include 指定查找某些文件
- –exclude 指定排除某些文件
举例:grep "hello" Hello.java
2.13 ps
语法: ps [参数] …
功能: 用于查看当前系统上运行的进程
选项:
- a 显示一个终端的所有进程
- u 以用户为主的格式来显示程序状况
- x 显示所有程序,不以终端机来区分
举例:
ps aux #显示系统上所有的进程
ps aux | grep "进程名"
ps aux | grep "进程id"
2.14 netstat
语法: netstat [参数] …
功能: 查看系统上的网络状态
选项:
- -a 显示所有正在或不在侦听的套接字
- -n 显示数字形式地址而不是去解析主机、端口或用户名
- -p 显示套接字所属进程的
PID
和名称
举例:
netstat -anp
netstat -anp | grep "进程名"
netstat -anp | grep "端口号"