Linux常用命令

Linux文件类型:

文件类型描述示例
普通文件用来在辅助存储设备(磁盘)上存储信息和数据程序源代码、程序、图片等
目录文件用于表示和管理系统中的文件,目录文件中包含一些文件名和子目录名/root,/home
链接文件用于不同目录下文件的共享当创建一个已存在的链接符时,系统就创建一个链接文件,指向已存在的文件
设备文件用来访问硬件设备键盘、硬盘等
命名管道(FIFO)是一种特殊类型的文件,Linux系统下,进程之间通信可以通过该文件完成 

常见目录:

  • /bin: 存放二进制可执行文件(ls、cat、mkdir等),常用命令一般都在这里;
  • /etc: 存放系统管理和配置文件;
  • /home: 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示;
  • /usr : 用于存放系统应用程序;
  • /opt: 额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里;
  • /proc: 虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息;
  • /root: 超级用户(系统管理员)的主目录(特权阶级^o^);
  • /sbin: 存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等;
  • /dev: 用于存放设备文件;
  • /mnt: 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统;
  • /boot: 存放用于系统引导时使用的各种文件;
  • /lib : 存放着和系统运行相关的库文件 ;
  • /tmp: 用于存放各种临时文件,是公用的临时文件存储点;
  • /var: 用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等;
  • /lost+found: 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里。

基本命令:

1、目录切换

  • cd usr:切换到usr目录
  • cd ..:切换到上一层目录
  • cd /:根目录
  • cd ~:用户主目录
  • cd -:上一次操作所在目录

2、目录的操作命令

  1. mkdir 目录名称:增加目录
  2. ls ll:查看目录信息
  3. find 目录 参数:寻找目录
  4. mv 目录名称 新目录名称:修改目录的名称
  5. mv 目录名称 目录的新位置:剪切/移动
  6. cp -r 目录名称 拷贝目标地址:拷贝目录, -r表示递归拷贝
    1. 可拷贝目录,压缩包,文件。文件 压缩包拷贝时不用-r
  7. rm [-rf] 目录:删除目录
    1. rm可以删除目录,文件,压缩包

文件的操作命令

1、touch 文件名称: 文件创建

2、cat/more/less/tail 文件名称:文件的查看

  • cat:查看显示文件内容
  • more:显示百分比,回车下一行,空格下一页,q退出
  • less:可以使用键盘PgUp和PgDn,q退出
  • tail -f:动态监控
  • tail -10:最后10行

3、vim 文件:编辑修改

4、rm -rf 文件:删除文件

压缩文件

打包并压缩文件

1、打包文件一般是.tar结尾,压缩一般是.gz结尾。

tar -zcvf 打包压缩后的文件名 sourceName

  • z:调用gzip命令进行压缩
  • c:打包文件
  • v:显示运行过程
  • f:指定文件名

2、解压压缩包

命令:tar [-xvf] 压缩文件

  • x:表示解压

tar -xvf xxx.tar.gz -C /usr (-c表示指定位置)

线程、进程命令

pwd:显示当前所在位置

grep 要搜索的字符串 要搜索的文件 --color:搜索命令,--color代表高亮

ps:ps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。

常用组合:

ps -ef/ ps -aux:这两个命令都是查看当前系统正在运行进程,两者的区别是展示格式不同。如果想要查看特定的进程可以使用这样的格式:ps aux|grep redis (查看包括redis字符串的进程),也可使用 pgrep redis -a

kill -9 进程的pid:杀死进程

ps [options]

-a:显示所有终端机下执行的程序,除了阶段作业领导者之外。
a:显示现行终端机下的所有程序,包括其他用户的程序。
-A:显示所有程序。
-c:显示CLS和PRI栏位。
c:列出程序时,显示每个程序真正的指令名称,而不包含路径,选项或常驻服务的标示。
-C<指令名称>:指定执行指令的名称,并列出该指令的程序的状况。
-d:显示所有程序,但不包括阶段作业领导者的程序。
-e:此选项的效果和指定"A"选项相同。
e:列出程序时,显示每个程序所使用的环境变量。
-f:显示UID,PPIP,C与STIME栏位。
f:用ASCII字符显示树状结构,表达程序间的相互关系。
-g<群组名称>:此选项的效果和指定"-G"选项相同,当亦能使用阶段作业领导者的名称来指定。
g:显示现行终端机下的所有程序,包括群组领导者的程序。
-G<群组识别码>:列出属于该群组的程序的状况,也可使用群组名称来指定。
h:不显示标题列。
-H:显示树状结构,表示程序间的相互关系。
-j或j:采用工作控制的格式显示程序状况。
-l或l:采用详细的格式来显示程序状况。
L:列出栏位的相关信息。
-m或m:显示所有的执行绪。
n:以数字来表示USER和WCHAN栏位。
-N:显示所有的程序,除了执行ps指令终端机下的程序之外。
-p<程序识别码>:指定程序识别码,并列出该程序的状况。
p<程序识别码>:此选项的效果和指定"-p"选项相同,只在列表格式方面稍有差异。
r:只列出现行终端机正在执行中的程序。
-s<阶段作业>:指定阶段作业的程序识别码,并列出隶属该阶段作业的程序的状况。
s:采用程序信号的格式显示程序状况。
S:列出程序时,包括已中断的子程序资料。
-t<终端机编号>:指定终端机编号,并列出属于该终端机的程序的状况。
t<终端机编号>:此选项的效果和指定"-t"选项相同,只在列表格式方面稍有差异。
-T:显示现行终端机下的所有程序。
-u<用户识别码>:此选项的效果和指定"-U"选项相同。
u:以用户为主的格式来显示程序状况。
-U<用户识别码>:列出属于该用户的程序的状况,也可使用用户名称来指定。
U<用户名称>:列出属于该用户的程序的状况。
v:采用虚拟内存的格式显示程序状况。
-V或V:显示版本信息。
-w或w:采用宽阔的格式来显示程序状况。 
x:显示所有程序,不以终端机来区分。
X:采用旧式的Linux i386登陆格式显示程序状况。
-y:配合选项"-l"使用时,不显示F(flag)栏位,并以RSS栏位取代ADDR栏位 。
-<程序识别码>:此选项的效果和指定"p"选项相同。
--cols<每列字符数>:设置每列的最大字符数。
--columns<每列字符数>:此选项的效果和指定"--cols"选项相同。
--cumulative:此选项的效果和指定"S"选项相同。
--deselect:此选项的效果和指定"-N"选项相同。
--forest:此选项的效果和指定"f"选项相同。
--headers:重复显示标题列。
--help:在线帮助。
--info:显示排错信息。
--lines<显示列数>:设置显示画面的列数。
--no-headers:此选项的效果和指定"h"选项相同,只在列表格式方面稍有差异。
--group<群组名称>:此选项的效果和指定"-G"选项相同。
--Group<群组识别码>:此选项的效果和指定"-G"选项相同。
--pid<程序识别码>:此选项的效果和指定"-p"选项相同。
--rows<显示列数>:此选项的效果和指定"--lines"选项相同。
--sid<阶段作业>:此选项的效果和指定"-s"选项相同。
--tty<终端机编号>:此选项的效果和指定"-t"选项相同。
--user<用户名称>:此选项的效果和指定"-U"选项相同。
--User<用户识别码>:此选项的效果和指定"-U"选项相同。
--version:此选项的效果和指定"-V"选项相同。
--widty<每列字符数>:此选项的效果和指定"-cols"选项相同。

根据端口号查看进程pid

netstat命令用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。

语法:netstat(选项)

常用命令:netstat -lnp|grep 8080

选项:

-a或--all:显示所有连线中的Socket;
-A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址;
-c或--continuous:持续列出网络状态;
-C或--cache:显示路由器配置的快取信息;
-e或--extend:显示网络其他相关信息;
-F或--fib:显示FIB;
-g或--groups:显示多重广播功能群组组员名单;
-h或--help:在线帮助;
-i或--interfaces:显示网络界面信息表单;
-l或--listening:显示监控中的服务器的Socket;
-M或--masquerade:显示伪装的网络连线;
-n或--numeric:直接使用ip地址,而不通过域名服务器;
-N或--netlink或--symbolic:显示网络硬件外围设备的符号连接名称;
-o或--timers:显示计时器;
-p或--programs:显示正在使用Socket的程序识别码和程序名称;
-r或--route:显示Routing Table;
-s或--statistice:显示网络工作信息统计表;
-t或--tcp:显示TCP传输协议的连线状况;
-u或--udp:显示UDP传输协议的连线状况;
-v或--verbose:显示指令执行过程;
-V或--version:显示版本信息;
-w或--raw:显示RAW传输协议的连线状况;
-x或--unix:此参数的效果和指定"-A unix"参数相同;
--ip或--inet:此参数的效果和指定"-A inet"参数相同。

网络通信命令

  • 查看当前系统的网卡信息:ifconfig
  • 查看与某台机器的连接情况:ping
  • 查看当前系统的端口使用:netstat-an

Linux的权限命令

操作系统中每个文件都有特定的权限,所属用户和所属组。权限是操作系统用来闲置资源访问的机制,在Linux中权限一般分为读(readable)、写(writable)和执行(excutable)。分别对应文件的属主(owner),属组(group)和其他用户(other),通过这样的机制来限制那些用户、哪些组可以对特定的文件进行什么样的操作。通过ls -l命令可以查看某个目录下的文件或目录的权限。

第一列内容的信息解释:

文件类型

  • d:目录
  • -:文件
  • l:软链接(类似快捷方式)

Linux中的权限:

对于文件

  • r:可以使用cat查看文件内容
  • w:可以修改文件内容
  • x:可以将其运行为二进制文件

对于目录

  • r:可查看目录下列表
  • w:可创建和删除目录下的文件
  • x:可以使用cd进入目录

超级用户可以无视普通用户的权限,即使文件目录权限是000,依旧可以访问。

linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其他组概念。

  • 所有者:一般为文件的创建者。ls -ahl可以看到文件的所有者,也可以使用【chown 用户名 文件名】来修改文件的所有者
  • 文件所在组:当某个用户创建了一个文件后,这个文件的所在组就是用户所在的组 可以使用【chgrp 组名 文件名】修改
  • 其他组:除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组

修改文件/目录的权限的命令:chmod

chmod u=rwx,g=rw,o=r aaa.text

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值