Linux:常用命令大全

Linux:常用命令大全

 

一、Linux系统的目录结构:

1:Linux所有内容是以文件形式进行管理

2:/ 根目录

(1)bin  引导过程必需的命令,存放二进制可执行文件(ls,cat,mkdir等)

(2)boot 存放用于系统引导时使用的各种文件,内核映像文件

(3)dev 用于存放设备文件,Linux把每个硬件也看作是一个文件

(4)etc  存放系统配置文件,例如安装jdk配置环境变量

(5)home 存放所有用户文件的根目录,用户登录系统后默认所在的目录

(6)mnt  是临时文件系统的挂载目录挂载光驱。

(7)opt  额外安装的可选应用程序包所放置的位置

    例如:我们可以安装自定义程序1:安装eclipse,安装tomcat

(8)root  超级用户目录,引导系统的必备文件,文件系统的装载信息以及系统修复工具和备份工具

(9)sbin  存放二进制可执行文件,只有root才能访问

(10)usr  用于存放系统应用程序,有些类似windows的Program Files

(11)tmp 程序运行过程中所产生的临时文件

(12)proc 包含内核虚拟文件系统和进程信息

 

二、Linux的常用命令:

1、注销、关机、重启命令:

注销:logout或exit

立即关机:halt(关机后关闭电源)

sudo shutdown -h now(关机不重启)

sudo shutdown -r now(关机重启)

sudo shutdown -h now 12:30 指定时间关机

重启:reboot或shutdown -r now(要root用户或是有授权才可以)

2、普通用户与超级管理员:

(1)显示“$”标识表示是普通用户。

(2)显示“#”标识表示是超级管理员。

(3)切换用户:使用su命令:当从普通用户切换到root用户(超级管理员)或其他用户时,需要输入目标用户的密码。当从root用户切换到普通用户时,不需要输入密码。

3、用户管理:

(1)添加用户:sudo adduser 用户名(不能含有大写)

   sudo useradd -s(指定使用什么类型的命令解析器) /bin/bash -g(创建的用户所属的组) Robin -d(创建用户所属的目录) /home/zwp -m(如果目录不存在,则创建一个新目录) zwp

(2)修改密码:passwd 用户名

(3)删除用户:sudo deluser 用户名(不干净)

       sudo userdel -r 用户名

(4)改变用户属性:usermod [options] 用户名

   options选项跟useradd命令的选项相同,-l可以改变用户登陆名称。

(5)who命令查看当前已经登录的用户

4、ls 显示文件和目录列表:

(1) -l 列出文件的详细信息

(2) -a 列出当前目录所有文件,包含隐藏文件

5、mkdir 创建目录(rmdir删除空目录):

   -p 父目录不存在情况下先生成父目录

6、cd 切换目录  

   cd .. 退出目录

7、touch 生成一个空文件

echo 生成一个带内容文件(echo abcd>a.txt)

8、文件显示:

(1)cat、tac 显示文本文件的全部内容

   cat正序显示文件内容,tac反序显示文件内容

(2)head,tail分别显示文件开头和结尾内容

   显示test.txt的前10行:head -n 10 test.txt

(3)more、less 分页显示文本文件内容,查看配置文件时,很长需要分页处理

  more(一页一页翻):

空格键向下翻页

Enter键向下滚动一行

f 显示出文件名及当前的行数

q 离开more

b 往回翻

  less(more的改进版):

空格 向下翻一页

PageDown 向下翻一页

PageUp 向上翻一页

q 离开

9、文件管理:

cp 复制文件或目录 (cp a.txt /home/zwp/abc/ddd)

rm 删除文件:

(1)rm a.txt

(2)rm -rf abc(可以删除非空目录)

mv 移动文件或目录、文件(剪切)

(1)mv  aaa bbb 将aaa改名为bbb

(2)mv bbb /home/zwp/abc/ccc

find 在文件系统中查找指定的文件(find -name 文件名)

locate 查找指定文件(locate 文件名)

10、wc 统计文本文档的行数,字数,字符数 (wc a.txt)

11、grep 在指定的文本中查找指定的字符串(grep aa a.txt)

12、pwd 显示当前工作目录

13、ln 建立链接文件(***)

软链接:ln -s 源文件 链接文件

硬链接:ln 源文件 链接文件

(1)ln命令会保持每一处链接文件的同步性,不论你改动了哪一处,其它的文件都会发生相同的变化;

(2)软链接就是只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间。

(3)硬链接没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。

14、man 命令帮助信息查询(man ls)

15、管道|(命令1的输出结果,不显示在屏幕上,而是当然命令2的输入)

cat /etc/passwd | wc -l

使用cat命令显示passwd文件中的内容,但是并没有显示在屏幕上,而是通过管道“|” 接受,wc命令从管道中取出内容进行统计,然后显示结果,这个输出时该文件有多少行(多少个用户)

16、重定向:

(1)输入重定向<

(2)标准输出重定向>

   cat /etc/passwd>/home/zwp/a.txt

   echo “hello java”>a.txt  (覆盖上一个a.txt)

(3)附加输出重定向:>>,追加,不会覆盖

   cat /etc/passwd>>/home/zwp/a.txt

   echo “———“>>a.txt   

17、sort排序:sort 文件名

sort命令将逐行对指定文件中的所有行进行排序,并将结果显示在标准输出上。

18、uniq命令:uniq 文件名

uniq命令读取输入文件,并比较相邻的行,去掉重复的行,只留下其中的一行。

19、comm 命令:comm filename1 filename2

comm命令对两个已经排序好的文件进行逐行比较

20、diff命令:diff filename1 filename2

逐行比较两个文件,列出他们的不同之处

 

三、Linux的系统命令:

1、stat 显示指定文件的相关信息 (stat familyA)

access 进入、Modify 修改、Change 改变

access time是文档最后一次被读取的时间,阅读一个文档会更新它的access时间,但它的modify时间和change时间并没有变化。cat、more 、less、grep、tail、head这些命令都会修改文件的access时间;

change time是文档的索引节点(inode)发生了改变(比如位置、用户属性、组属性等);

modify time是文本本身的内容发生了变化。

2、whoami 显示用户自己的身份;

3、hostname 显示主机名称;

hostname

hostname -i 显示主机IP

4、uname 显示系统信息 (uname -a 显示全部信息) 

5、top 显示当前系统中耗费资源最多的进程 动态显示过程,实时监控。

6、ps 显示瞬间进程状态(ps -aux  显示所有瞬间进程状态)

7、du 显示指定的文件(目录)已使用的磁盘空间的总量

  du

  du familyA(以K为单位)

  du -h familyA

8、df 显示文件系统磁盘空间的使用情况(df -h) 

9、free 显示当前内存和交换空间的使用情况

10、ifconfig 显示网络接口信息,windows 是ipconfig

11、ping 测试网络的连通性

12、clear 清屏

13、kill 杀死一个进程

14、od:二进制形式

15、which:显示命令所在位置

16、修改权限:

(1)文字设定法:chmod [who] [+|-|=] [mode]

   who:文件所有者u、文件所属组g、其他人o。

   +添加权限;-减少权限;=覆盖原来的权限

   mode:r读、w写、x执行

(2)数字设定法:chmod [-]数字 目录或文件

   -:没有权限;r4、w2、x1

    765:7:rwx–文件所有者  6:rw–文件所属组   5:rx–其他人

17、umask命令:(umask maskcode)

   umask命令指定在建立文件时预设的权限掩码

18、修改文件的所有者和所属组:

(1)sudo chown 用户 文件:修改文件的所有者 sudo chown zhangweiepeng a.txt

(2)sudo chown 用户:组名 文件:修改文件所属用户和所属组

(3)sudo chgrp 组名 文件:修改文件所属组

19、查找和检索:

(1)按文件属性查找:

文件名:find 查找目录 -name “文件的名字”(可以使用通配符?和*)

文件大小 find 查找目录 -size +(-)10k(小写)

文件类型 find 查找目录 -type d/f/c/s/p/l

(2)按文件内容查找:

  grep -r “查找的内容” 查找的路径

20、U盘的挂载:mount U盘名称 目录  =>sudo /dev/sdb /mnt

    U盘的卸载:umount 目录  =>sudo umount /mnt

 

四、备份压缩命令:

1、tar:

(1)参数:

  c–创建–压缩

  x–释放–解压缩

  v–显示提示信息–压缩解压缩–可以省略

  f–指定压缩文件的名字

  z–使用gzip的方式压缩文件–.gz

  j–使用bzip2的方式压缩文件–.bz2

(2)打包:

语法:tar zcvf 生成的压缩包的名字(xxx.tar.gz) 要压缩的文件或目录

   tar jcvf 生成的压缩包的名字(xxx.tar.bz2) 要压缩的文件或目录

    tar -cvf testA.tar testA (tar -cvf 保存路径/包名 打包目录)

(3)拆包:

解压到当前目录:tar -xvf 压缩包名字 

解压到指定目录:tar -xvf 解压包名字 -C 指定目录

2、gzip 命令:

  gzip 压缩(解压)文件,压缩文件后缀为gz

(1)压缩:

gzip只能压缩文件,目录文件夹不能处理,需要使用tar对文件夹打包,再使用gzip testAA.tar 进行压缩

(2)查看压缩文件:

gzip -l testA.tar.gz 查看压缩包详细信息

compressed压缩后大小;uncompressed原始大小;ratio压缩比;uncompressed_name原始文件名

(3)解压:

gunzip 文件名.gz

gzip -d familyA.tar.gz  

(4)显示文件名和压缩比:

  高压缩(速度稍慢):gzip -9 testA.tar 高压缩比

  低压缩比(速度快):gzip -1 testA.tar 低压缩比

3、bzip2 命令:

bzip2 压缩文件或目录,压缩文件后缀为bz2

bzip2 -k 压缩文件或目录:保留原文件

(1)压缩:

bzip2 -z testA.tar  #压缩需加上参数-z

(2)解压缩:

bunzip2 testA.tar.bz2

bzip2 -d testA.tar.bz2

4、tar命令压缩和解压:

(1)仅打包,不压缩:tar -cvf testA.tar testA

(2)打包后,以gzip压缩:tar -zcvf testA.tar.gz testA

拆包:sudo tar -zxvf testA.tar.gz

(3)打包后,以bzip2压缩:tar -jcvf testA.tar.bz2 testA

拆包:sudo tar -jxvf testA.tar.bz2

5、rar(必须手动安装该软件):

(1)参数:压缩:a    解压缩:x

(2)压缩:rar a 生成的压缩文件的名字(不用加.rar后缀) 压缩的文件或目录

(3)解压缩:rar x 解压缩的文件名 (解压目录)

6、zip:

(1)压缩:zip 压缩后的名字 压缩的文件

zip -r 压缩后的名字 压缩的目录

(2)解压缩:unzip 压缩包的名字

unzip 压缩包的名字 -d 解压目录

 

五、vim编辑器:

1、工作模式:

(1)命令模式–打开文件之后,默认进入命令模式

(2)编辑模式–需要输入一些命令,切换到编辑模式

(3)ex转义模式–在转义模式下可以输入一些命令

2、命令模式下的操作:

(1)光标的移动:

  H前 J下 K上 L后

  行首:0   行尾:$

  文件开始位置:gg

  文件末尾:G

  行跳转:nG(n是自然数)

(2)删除操作:

  删除光标后边的字符:x

  删除光标前边的字符:X

  删除光标后边的单词:dw

  删除光标到行首的字符串:d0

  删除光标到行尾的字符串:D(d$)

  删除多行:ndd(n是自然数)

(3)撤销操作:

  撤销:u

  反撤销:ctrl+r

(4)复制粘贴:

  复制:yy

  复制多行:nyy

  粘贴:p(光标所在行的下一行)

  粘贴:P(光标所在行)

  剪切==删除

(5)可视模式:v   复制:y   删除:d   粘贴:p/P

(6)查找:/查找内容   从光标位置,向下,最下边之后,返回到头部

   ?查找内容   从光标位置,向上查找,顶部之后,返回到尾部

   #–把光标移动到查找的单词上面

   n:下一个内容   N:上一个内容

(7)单个字符的替换:r     单词的替换:cw

(8)向左缩进:<<

 向右缩进:>>

3、命令模式切换到文本模式:

a–在光标所在位置的后边插入          A–在当前行的尾部插入

i–在光标所在位置的前边插入          I–在光标所在行的行首插入

o–在光标所在行的下边开辟一个新的行      O–在光标所在行的上边开辟一个新的行

s–删除光标后边的字符               S–删除光标所在的行

4、ex转义模式的操作:

(1)行的跳转:n(n是行数)

(2)替换光标所在行的某些内容

  替换最前一个:s/替换前的内容/替换后的内容

  替换所有:s/替换前的内容/替换后的内容/g

(3)替换文件中某些的内容:

  %s/替换前的内容/替换后的内容

  %s/替换前的内容/替换后的内容/g

  20,25s/替换前的内容/替换后的内容/g(20-25行)

(4)w–保存

  wq–保存并退出   

  q–退出

  q!–退出不保存

  x==wq

  命令模式的保存退出:ZZ

(5)水平分屏:sp 文件名

  分屏之间的切换:ctrl+ww

  垂直分屏:vsp 文件名

(6)显示行号(:set number)

  取消行号(:set nonumber)

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/114742.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • [系统审计]SAP HANA 中的系统审计策略管理

    [系统审计]SAP HANA 中的系统审计策略管理

  • 粘包问题怎么解决_包带粘手怎么处理

    粘包问题怎么解决_包带粘手怎么处理如何解决粘包问题粘包就是连续向对端发送两个或者两个以上的数据包,对端在一次收取中受到的数据包数量可能大于1个,当大于1个时,可能时几个包加上某个包的部分,这这干脆几个完整的包在一起。当然,也可能收到的数据只是一个包的部分,这种情况一般也叫做半包。无论是半包问题还是粘包问题,因为TCP是流式数据,所以其解决思路还是从收到的数据中把包与包的边界区分出来。如何区分,有以下三种办法。固定包长的数据包。固定包长,即每个协议包的长度都是固定的。假如我们规定每个协议包的大小都是64字节,每收满64字节,就取出来

  • 爬虫最终杀手锏 — PhantomJS 详解(附案例)

    爬虫最终杀手锏 — PhantomJS 详解(附案例)一.认识Phantomjs1.Phantomjs:无界面的浏览器Selenium: 可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否

  • python 报错: unindent does not match any outer indentation level

    python 报错: unindent does not match any outer indentation level

    2021年11月11日
  • dpkg强制卸载

    dpkg强制卸载dpkg的一个强制卸载的方法安mysql的时候因为玄学国家防火墙,安到一般被阻断了,再卸的时候各种依赖不对,dpkg-r/-P怎么都卸不掉,提示有依赖卸载包的东西,找到一个–force-all就可成功卸载了,但有的包可能出现缺少依赖的情况,最好还是不要烦躁看清楚依赖关系!另外aptautoremove千万别随便用,可能把系统的基本组件也给你卸掉…

  • 浏览器出现stack overflow at line:0,解决方法

    浏览器出现stack overflow at line:0,解决方法浏览器如果出现"stackoverflowatline:0"并且有些图片无法显示的问题,是由于注册表被串改了这是由于pngfilt.dll问题,解决方法如下把以下内容保存到记事本,随便起个名字,并且把后缀改名为.reg,双击打开这个reg文件点“是”,添加入注册表中再重启浏览器,问题就解决了WindowsRegistryEditorVersion5.00;…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号