Linux常用命令
ls
语法: ls [选项] [目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
常用选项
- -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
- -d 将目录像文件一样显示,而不是显示其下的文件. 如:ls –d 指定目录
- -k 以 k 字节的形式表示文件的大小
- -l 列出文件的详细信息
- -r 对目录反向排序
- -t 以时间排序
- -R 列出所有子目录下的文件
第一列, 是文件的权限, 权限的第一个字母页面数了文件类型:
- -普通文件
- d 目录
- l 链接文件
- …
第三列, 是指文件的拥有者
第四列, 文件拥有者所在的用户组
第五列, 文件大小(只有普通文件才有意义),单位: 字节
第六至八列, 文件的上次访问时间
最后一列, 文件名
cd
语法: cd 目录名(可以是绝对路径, 也可以是相对路径)
Linux中, 以 / 开头的是绝对路径, 以 . 或 … 开头的是相对路径(.有时可以省略)
功能: 改变工作目录。将当前工作目录改变到指定的目录下.
从主目录(~)切换到了根目录(/)
使用相对路径, 从根目录切换到了根目录下的boot目录
通过相对路径, 从boot目录切换到了根目录下
如果不知道自己cd到哪了
pwd就可以查看到当前位置的绝对路径
使用tab键补全
我们敲的所有的 Linux 命令, 都可以使用 tab 键来尝试补全, 加快效率.
使用ctrl + c重新输入
如果命令或者目录敲错了, 可以 ctrl + c 取消当前的命令.
快速返回主目录
只输入cd
pwd
语法: pwd
功能:显示用户当前所在的目录
ctrl + l
语法: pwd
功能:清屏, 但不是之前敲过的命令都没了, 滚轮向上滚, 就能看到之前的命令
touch
语法: touch [选项]… 文件…
功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
如果输入后, 什么都不显示, 证明创建成功
输入ll
, 查看当前中的文件, 可以看到刚刚创建的text.txt文件
cat
语法:cat [选项] [文件]
功能: 查看目标文件的内容
常用选项:-n 对输出的所有行编号
由于当前text文件是空的, 所以什么也没有显示
echo
语法:echo 内容 [> 文件]
>
:覆盖文件内容 >>
追加内容
功能:写入内容
>
重定向
如果没有重定向, 则内容写在控制台上, 如果有, 那么写在指定文件中.
可以看到text文件中有内容了
以上的cat, echo操作可以用来读写一些简单的文件, 但如果是读写复杂的文件就不方便了.
vim
vim 是一个文本编辑器, Linux自带的
功能:完成针对文件进行更细粒度的编辑.
创建/打开文件
vim [文件名]
编辑文件
vim 打开文件后默认是普通模式.普通模式下键盘的按键表示一些特殊功能的快捷键(例如按下 j 并不是输入字母 “j”, 而是表示光标往下移动一行), 需要进入插入模式才能进行文本编辑
使用 i 键可以进入到插入模式, (左下角提示 --INSERT-- )然后就可以像记事本一样正常编辑了.
如果编辑完成, 如果你想保存并退出, 直接输入:wq
会被识别成插入的文本
需要摁esc
键, 退出插入模式, 进入普通模式, 再输入:wq
.
保存退出
:wq
输入:
后, 进入了vim的命令模式, 接下来输入的是vim命令.
w
:保存; q
:退出
mkdir
语法:mkdir [选项] dirname…
功能:在当前目录下创建一个名为 “dirname”的目录
常用选项:-p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多级目录
创建多级目录
rm
语法:rm [-f-i-r-v] 文件/目录
功能:删除文件或目录
常用选项:
- -f 即使文件属性为只读(即写保护),亦直接删除
- -i 删除前逐一询问确认
- -r 删除目录及其下所有文件
删除文件
删除目录及其所有文件
man
Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。
语法: man [选项] 命令
常用选项
- -k 根据关键字搜索联机帮助
- num 只在第num章节找
- man man 能够看到 man 手册中的若干个章节及其含义
输入man ls
摁q
退出手册.
cp
语法:cp [选项] 源文件或目录 目标文件或目录
功能: 复制文件或目录
说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
常用选项:
-
-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-
-i 或 --interactive 覆盖文件之前先询问用户
-
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
-
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理
复制文件到目录
复制目录到目录, 必须加-r
mv
语法: mv [选项] 源文件或目录 目标文件或目录
功能:
根据mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将执行不同的操作, 重命名或者移动.
- 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个,它将所给的源文件或目录重命名为给定的目标文件名。
- 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。
常用选项
-
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖
将文件移动到目录中
将文件text移动到text2中, 此时text的名称变为为text2.
将多个文件或者目录移动到目标目录中
grep
**语法:**grep [参数]… [文件]…
功能:用于查找文件中是否包含指定字符串, 并显示对应的行.
选项:
-
-n<行数> 显示的行数
-
-w 全字匹配. 要求整个单词都完全相同的结果才能匹配出来, 而不仅仅是一个单词的一部分.
-
-r 递归查找. 可以搜索多级目录下的所有文件.
-
–color 高亮查找到的结果
-
–include 指定查找某些文件
-
–exclude 指定排除某些文件
查找所有包含’a’的行
ps
**语法:**ps [参数]…
功能:用于查看当前系统上运行的进程, 根据进程名, 找到pid; 根据pid, 找到进程名
选项:
-
a 显示一个终端的所有进程
-
u 以用户为主的格式来显示程序状况
-
x 显示所有程序,不以终端机来区分
显示当前会话的进程
显示完整进程
显示vim的进程
|
称为管道, 能把多个命令连接到一起, 把前一个命令的输出变成后一个命令的输入
netstat
**语法:**netstat [参数]…
功能:查看系统上的网络状态. 根据进程名, 找到端口号; 根据端口号, 找到进程名
选项:
-
-a 显示所有正在或不在侦听的套接字
-
-n 显示数字形式地址而不是去解析主机、端口或用户名
-
-p 显示套接字所属进程的PID和名称
netstat -anp | grep 8080
根据端口号8080查找对应进程