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: 重复前一个搜索(与 / 或 ? 有关) q: 退出
打开一个大文件他就不会一下子全加载完,他可以手动翻页 最大的优势就是大文件可以秒开,可以方便我们查看,因为我们以后在开发中是要常常查看服务器日志的,用这个命令方便许多
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 [参数] 权限 文件名
|