【Linux】常用的命令
椰椰椰耶 2024-09-15 16:07:10 阅读 73
文章目录
`ls``ls -l /`
`touch``cd``pwd``cat``echo``vim`打开文件编辑内容保存退出
`mkdir``rm``mv``cp``man``grep``ps``netstat`总结 :
<code>ls
ls
==> list
列出当前目录下都有哪些内容(文件/目录)
直接输入 ls
,是查看当前目录的情况;输入 ls/
就是看看 /
这个目录下的情况
/
称为“根目录”,就是 Windows
上的“此电脑”Linux
中没有盘符,所有的目录和文件都是在 /
目录下的要确保命令和后面的参数之间,要带有至少一个空格
这些就是 <code>/ 目录(根目录)下包含的内容,这些都是系统自带的文件和目录
这里的文件不能随便删除,删除之后可能系统就用不了了,需要重装云服务器重装云服务器也非常简单。在网站后台,有个“重装系统”的选项
ls -l /
(简写为:ll /
)
后面是小写 L
,不要写成大写 i
或者数字 1
;并且命令和参数之间都有空格
这里是按照列表的方式进行显示,这是最常用的功能
第一列的十个字母构成的这一串代表该文件的权限,当前用户是否可读、可写、可执行
第一个字母:文件类型
第三和四列代表文件的拥有者是谁,此处这些文件都是 root 拥有的
第五列代表文件大小(支队普通文件有意义)
第六七八列代表最后的修改时间
最后一列就是名字
touch
创建一个基本的文件,里面是什么都没有的
<code>cd
cd
==>change directory
修改(当前)目录
<code>cd / 来到根目录,就相当与点击“此电脑”~
和 -
这个位置显示的就是你当前所在的目录
~
也称为“home 目录”,“用户主目录”,这个就是用户登录的时候,默认进入的目录
可以输入两个字母,按“
tab
”键进行补全(唯一)如果不唯一,可以连续按两次,就会自动列出所有相关的选项
pwd
可以查看当前所处的路径的绝对路径
在 Linux
的命令中,但凡涉及到相关的操作,都是可以支持绝对路径和相对路径的
在 Linux
中,绝对路径是以 /
开头的相对路径是以 .
或者 ..
开头(有的时候 .
可以省略,.
表示当前目录,..
表示当前目录的上级目录)
绝对路径写法:
<code>cat
查看文件内容,直接把文件内容打印到控制台上
因为里面没有内容,所以什么都看不到
当输入一个命令,没有任何提示,此时就是“成功”,如果失败,就会告诉你一些报错信息
<code>echo
打印内容到控制台上
可以直接将内容打印出来也可以将内容放到指定文件中
这里的 <code>> 就是“重定向”。本来是要写到控制台上的,现在通过重定向将这个内容写到文件中会将文件里面原有的内容给清空掉之后再进行写入
如果不想将原有内容清空之后再进行写入
就是用 <code>>> 完成追加写
但这里的 echo
+重定向 只能写一些简单的字符串内容。如果需要写的内容很多,就不是很方便,更不方便修改改
vim
这是 Linux
上自带的一个文本编辑器,使用 vim
就可以更灵活的对文件进行编辑了。虽然和记事本的定位差不多,但实际上 vim
的使用要复杂得多
我们这里只介绍一些 vim
最最基础的操作:
打开文件编辑文件保存退出
后面我们使用服务器,可能会经常在服务器上 查看日志,修改配置
打开文件
vim + 文件名
编辑内容
vim
包含很多快捷键,快捷键的画风和其他的软件截然不同。
其他的很多软件的快捷键都要搭配 Ctrl
、alt
之类的组合键完成vim
更期望使我们输入单个案件,就能起到快捷键的效果
所以 vim
引入了“模式”的概念。启动 vim
之后,默认处于 normal mode
(普通模式),此时键盘按键都是快捷键,而不是输入文本
要想输入文本,就需要进入 insert mode(插入模式),进入插入模式的方法有很多,最简单的就是 i
保存退出
在 <code>xshell 中,ctrl
+ s
是冻结屏幕的指令,ctrl
+ q
是解除冻结结
先按 esc
,回到普通模式(左下角的 insert
就消失了)再按 :
,进入命令模式(光标就会来到左下角),此时输入的内容,就是 vim 的命令此时输入 wq
(write 保存,quit 退出),进行保存退出
<code>mkdir
make directory
,创建目录
mkdir 目录名
创建多级目录
<code>mddir -p 目录层级
<code>rm
remove
,删除
rm 文件1 文件2 ...
有的系统上(<code>Centos)输入 rm
删除时会有个提示,是否确认要删除,输入 y
就是删除,n
就是不删除若要一次删除多个,只需要在文件之间加上空格即可
删除目录
删除目录,不仅仅是删除目录本身,还要删除目录包含的其他目录和文件
需要使用 rm -r
来删除,-r
表示“递归”有的系统上,删除的时候,也会和上面一样,提示你是否要真的删除。如果是删除目录的话,递归过程比较麻烦,每个目录都会要你确认。这时我们可以使用 rm -rf
的方式直接删除f
表示“强制删除”,不需要确认
此处的
rm
其实是一个危险操作,一旦删除,数据就没了删除的时候,一定要确保,你删的这个东西确实是不再使用了在公司的服务器上,尤其是生产环境中,不敢随意删除
rm -rf /
这个命令会把你整个硬盘的数据都给删除掉因为根目录下不仅有你的文件,还有系统文件,一旦删除,你的机器就用不了了这个操作,比drop database
还要猛
drop database
只是数据库挂了,但系统里面的其他文件还是好的但干掉整个系统,是无论数据库,tomcat
,其他的程序,其他的数据,统统一锅端
mv
move
,移动(剪切,粘贴)
mv 要移动的源 移动的目标
不仅可以移动文件,还可以移动目录,把目录内部包含的所有内容都进行移动
使用 mv 还可以针对文件/目录进行重命名
<code>mv 操作,无论你移动的是什么(普通文件、目录文件),时间复杂度都是
O
(
1
)
O(1)
O(1)
cp
copy
,复制
可以拷贝普通文件,也可以拷贝目录拷贝目录的时候,和 <code>rm 类似,都是要加上 -r
选项,表示要递归地拷贝目录里面的内容
man
Linux
命令很多,而且每个命令还有不同的参数选项,记不住是正常的
Linux
上提供了 man
这个命令==>查看命令的手册
<code>man 后面接上命令,即可看到关于这个命令的所有信息按 q
退出
上述命令都是围绕目录和文件展开的
grep
字符串匹配/查找
比如,想查找某个文件中是否包含某个关键字,这个关键字在第几行,都可以使用 grep
来查看
加上 <code>-n 就是显示是第几行
grep
不仅仅可以在文件中查找,还能搭配其他的命令,完成更复杂的查找操作
ps
process show
,展示进程,显示出当前系统上都有哪些进程
单独输入 <code>ps,只能看到当前会话(终端)对应的进程,非常不全想看到更全的,就输入 ps aux
因为这里的进程太多了,也不好观察,所以很多时候 <code>ps 都会搭配 grep
来使用
比如,查看 mysql
进程的进程 pid
<code>| 叫做 管道,会把前面命令的输出,作为后面的命令的输入上面的一行是服务器的进程下面的是因为 grep
命令本身也会形成进程,也能被平时获取到
netstat
可以用来查看某个端口是否被某个进程使用;也可以查询某个进程使用了哪些接口
主要关注 <code>TCP,UDP
涉及到的网络信息,下面的 Unix
域套接字(属于一种进程间通信的方式)可以结合 grep
一起使用,netstat -anp | grep mysql
Linux
哲学理念(从Unix
继承过来),小而美 ,每个命令都很简单,只是集中精力做好一件事。如果想要完成复杂工作,可以把多个命令通过|
这样的方式组合起来
上述命令,足以覆盖工作中的大多数场景了
总结 :
ls
:列出指定路径下所包含的文件和目录cd
:切换目录pwd
:查看当前路径的绝对路径touch
:创建空的文件cat
:显示文件内容echo
:显示内容 & 写入文件vim
:文本编辑器
打开文件:vim 文件名
编辑文件:小写字母 i
进入插入模式保存退出:esc
回到普通模式 :wq
mkdir
: 创建目录rm
:删除文件 & 删除目录(rm -rf
)mv
:移动文件 & 移动目录,也可以重命名cp
:复制文件 & 复制目录man
:查看手册grep
:字符串匹配,查找某个文件是否包含某个字符串ps
:查看进程信息netstat
:查看网络信息
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。