Linux工作常用命令

一、文件相关命令

  1:ls  :显示当前目录下所有的文件

  2:ls -a :列出所有文件,包括以 "." 开头的隐含文件

  3:ll  :显示当前文件或目录的详细信息,含有时间、读写权限、大小、时间等信息,等于是 ls -l 命令

  4:du :用于显示目录或文件的大小。一般用来查看文件的大小,比如说看一些dump的日志的文件的大小

  5:du -sh * :查询当前目录下所有的文件的大小以K,M,G为单位,提高信息的可读性

          A:场景:查看服务器中一个文件(比如日志)大小,在删除磁盘文件的时候能有一个对比,那个文件占用磁盘最大

  6:cat :输出当前文件内容

          A:场景:一般就是用来查看当前文件的内容,比如说要看下服务器的启动service.sh脚本文件中的内容(cat service.sh)

          B:扩展:cat -n fileName   输出文件内容并且在前面加上行号

          C:扩展:cat -b fileName   输出文件内容并且在前面加上行号,与上面的不同是会过滤空白行

          D:扩展:cat -n textfile1 > textfile2 把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里


 7:more :跟cat差不多,但是有一个优点就是展示出来的是按照页的形式出来,可以接着按space空格键向下翻页

          A:  扩展:more -num 一次显示行数
          B:  扩展:more +num 从第num行开始显示


8:  chmod :修改当前用户对文件的权限

          A:  r=4,w=2,x=1,所以想要rxw 读写和可执行权限,那就是4+2+1=7,而一个位数表示一个角色,chmod a=rwx txt1.txt就可以理解为就是 chmod 777 txt1.txt
          
          B:  u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是

          C:  + 表示增加权限、- 表示取消权限、= 表示唯一设定权限

          D:  r 表示可读取,w 表示可写入,x 表示可执行

          E:  场景:chmod这个命令实用比较广泛,但是说白了就是一点更改文件权限,但是权限这个东西怎么加,是加所有用户还是其他?是加读写还是去除读写?这个就需要理解 u、g、o、a、+、-、=、r、w、x等含义

          F:  扩展:chmod ugo+r txt1.txt 或者 chmod a+r txt1.txt  设置txt1.txt 对所有的用户角色可读

          G:  扩展:chmod 777 file ,chmod也可以用数字来代表权限问题


10: diff :用于比较文件的差异

          A: 扩展:diff log1.log log2.log -y -W 50并排输出两个文件的不同

  
11: grep :用于查找文件里符合条件的字符串,这个是最常见的也是日常查询文件最常用的

          A: 扩展:grep "aaa" log.log -A 10 ,除了显示符合搜索条件的那一列之外,并显示该行之后的10行内容

          B: 扩展:grep "aaa" log.log -B 10 ,除了显示符合搜索条件的那一列之外,并显示该行之前的10行内容

          C: 扩展:grep "aaa" log.log | grep "bb" -A 10,同时搜索满足条件以上两个条件的结果,并向下在打印剩下的10行

          D: 扩展:grep "aaa" log.log | wc -l,统计满足条件的的次数

  12:scp:命令用于 Linux 之间复制文件和目录。可以用来作为下载文件到本地的一种方式。scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令

            A:打开本地系统服务  文件  远程登入  允许访问 所有用户

            B: 输入:scp  heap.hprof     aobing@172.19.36.87:/Users/aobing/Downloads

            C: 输入本机电脑登入密码即可,就能显示当前在下载的进度了

            D: 扩展:举一个用法的例子,假设用我自己当前电脑作为演示,怎么去把我们跳板机中的dump文件下载到我们本地,以便于我们自己来分析堆栈呢?

            E: 这个是比较常用的方法,可以有其他的用法,就因个人而已吧


  13:  mkdir :用于创建目录。这个是最简单的了

            A: 扩展:mkdir aaaa 创建一个aaaa文件


  14: kill :删除执行中的程序或工作,这个需要慎重使用,我们可以一般在我们的电脑卡死,或者我们本地启动tomcat端口被占用了,但是我们又没有找到,可以ps查一下进程ID,然后kill一下

            A: 扩展:kill 14269,杀死14269这个进程

            B: 扩展:kill -KILL 14269,强制杀死14269这个进程

            C: 扩展:kill -9 14269,彻底杀死14269这个进程

  15: rm :用于删除一个文件或者目录。在使用这个命令之前需要注意,不要随便执行这个命令,文件一旦通过rm命令删除,则无法恢复所以可能有时候不小心删除某些文件

            A: 扩展:rm gc.log.20210506151038 ,删除 gc.log.20210506151038 文件?会跳出一个确定提示,输入 y,则是删除

            B: 扩展:rm -f gc.log.20210506151038,不会产生确认删除提示,直接删除文件

            C: 扩展:rm -rf gc.log.20210506151038,不会产生确认删除提示,直接删除文件,并且会把当前目录下的所有文件一并删除,非常的暴力



  16:  ps :(全拼:process status)用于显示当前进程的状态,主要是用来查询当前进程的状态
      
        比如说需要查询一下当前tomcat的相关信息,或者说服务器配置的tomcat的一些启动参数,都是可以看到

            A: 扩展:ps -ef | grep 进程关键字,查询某个关键字的进程,如下所示,能显示很多信息。我这里没有复制全,自己可以进公司的服务试一下,不会有问题的

            B: 扩展:ps -A,列出所有的进程

            C: 扩展:ps -aux,显示所有包含其他使用者的行程


    17:  pwd :用于显示工作目录,这个命令就很简单了, 没有什么特殊的参数啥的,就是显示当前目录地址

            A: 扩展:pwd,跟简单,后面不需再加什么参数,显示一下目录,方便下我们复制文件的目录地址


    18:  source :这个命令一般就是和**点(.)**是一样的效果,就是修改了某个文件不用重启,而可以立马生效

            A: 扩展:source fileName等于. fileName是一个效果。使改动的文件立即生效


    19:  tail :用于查看文件的内容。通常比如说我们需要查看正在变动的日志文件,那就可以用这个命令了

            A: 扩展:tail -f filename,会把 filename 文件里的最尾部的内容显示出来,并且不断刷新,只要 filename 更新就可以看到最新的文件内容

            B: tail -20f filename,会把 filename 文件里的最后的20行内容显示出来,并且不断刷新

            C: tail -c 20 filename,显示文件 filename 的最后 20 个字符

            D: tail -n +20 filename,显示文件 filename 的内容,从第 20 行至文件末尾
posted @ 2021-11-05 16:32  jock_javaEE  阅读(55)  评论(0)    收藏  举报