🍃前言

本篇博客将对Linux常⽤命令进行一个简单的介绍,以方便后续Linux的操作

🌴ls 与 pwd

🚩ls

语法:ls [选项] [⽬录或⽂件]

功能:对于⽬录,该命令列出该⽬录下的所有⼦⽬录与⽂件。对于⽂件,将列出⽂件名以及其他信息。

常⽤选项:

  • -a列出⽬录下的所有⽂件,包括以 . 开头的隐含⽂件。

  • -d将⽬录象⽂件⼀样显⽰,⽽不是显⽰其下的⽂件。如:ls ‒d 指定⽬录

  • -k 以 k 字节的形式表⽰⽂件的⼤⼩。ls -alk 指定⽂件

  • -l 列出⽂件的详细信息。

  • -r 对⽬录反向排序。

  • -t 以时间排序。

  • -R 列出所有⼦⽬录下的⽂件。(递归)

例如

ls -l

小技巧:

  • 使用ll可以快速查看当前路劲下的所有文件以及目录

🚩pwd

语法:pwd

功能:显⽰⽤⼾当前所在的⽬录
在这里插入图片描述

🎍cd

Linux系统中,磁盘上的⽂件和⽬录被组成⼀棵目录树,每个节点都是⽬录或⽂件。

语法: cd ⽬录名

功能:改变⼯作⽬录。将当前⼯作目录改变到指定的⽬录下.

举例:

# 返回上级⽬录
cd ..
# 进⼊⽤⼾家⽬录
cd ~
# 返回最近访问⽬录
cd -
# 访问bin目录
cd bin/

为了更好的理解与使用该命令,我们有必要了解一下Linux的目录结构

🚩认识Linux目录结构

Linux是一个树型结构
在这里插入图片描述
在这里插入图片描述
还有⼏个特殊的⽬录:

  • /称为根⽬录
  • .称为当前⽬录
  • ..称为当前⽬录的上级⽬录

访问时我们还有必要了解以下绝对路径和相对路径

  • 形如:/usr/share/tomcat/logs/ 以根⽬录开头的,称为绝对路径.
  • 形如:./logs. 或者 .. 开头的,称为相对路径.

在进行Linux命令输入时,博主有几个小技巧

  1. 使⽤tab键补全

我们敲的所有的Linux命令,都可以使⽤tab键来尝试补全,加快效率.

  1. 使⽤ctrl+c重新输⼊

如果命令或者⽬录敲错了,可以ctrl+c取消当前的命令

  1. 关于XShell下的复制粘贴
  • 复制:ctrl + insert(有些电脑insert需要配合fn来按)
  • 粘贴:shift+insert

🍀touch与cat

🚩touch

语法:touch [选项]… ⽂件…

功能: touch命令参数可更改⽂档或⽬录的⽇期时间,包括存取时间和更改时间,或者新建⼀个不存在的⽂件。

举例:
在这里插入图片描述

🚩cat

语法:cat [选项] [⽂件]

功能: 查看⽬标⽂件的内容

常用选项:

  • -n 对输出的所有行编号

在这里插入图片描述

🌲mkdir与rm

🚩mkdir

语法:mkdir [选项] dirname…

功能:在当前⽬录下创建⼀个名为“dirname”的⽬录

常⽤选项:

  • -p,–parents可以是⼀个路径名称。此时若路径中的某些⽬录尚不存在,加上此选项后,系统将⾃动建⽴好那些尚不存在的⽬录,即⼀次可以建⽴多级⽬录
# 递归建⽴多个⽬录
mkdir –p test/test

🚩rm

语法:rm [-f-i-r-v] [dirName/dir]

功能:删除⽂件或⽬录

常⽤选项:

  • -f 即使⽂件属性为只读(即写保护),亦直接删除

  • -i 删除前逐⼀询问确认

  • -r 删除⽬录及其下所有⽂件

使用举例如下:

在这里插入图片描述

注意事项:

  • 千万不要运⾏ rm -rf / ,尤其是在公司的⽣产服务器上.

🎄cp与mv

🚩cp

语法:cp [选项] 源⽂件或⽬录 ⽬标⽂件或⽬录

功能:复制⽂件或⽬录

说明:

  • cp指令⽤于复制⽂件或目录,如同时指定两个以上的⽂件或⽬录,且最后的⽬的地是⼀个已经存在的目录,则它会把前⾯指定的所有⽂件或⽬录复制到此目录中。若同时指定多个⽂件或⽬录,⽽最后的⽬的地并非⼀个已存在的目录,则会出现错误信息

常⽤选项:

  • -f 或 --force 强行复制⽂件或⽬录,不论目的⽂件或⽬录是否已经存在
  • -i 或–interactive覆盖⽂件之前先询问⽤户
  • -r递归处理,将指定⽬录下的⽂件与⼦⽬录⼀并处理。若源⽂件或⽬录的形态,不属于⽬录或符号链接,则⼀律视为普通⽂件处理
  • -R 或 --recursive递归处理,将指定⽬录下的⽂件及⼦⽬录⼀并处理

举例:

 cp test1.txt test2.txt

🚩mv

语法:mv [选项] 源⽂件或⽬录 ⽬标⽂件或⽬录

功能:

  1. 视mv命令中第⼆个参数类型的不同(是目标⽂件还是⽬标⽬录),mv命令将⽂件重命名或将其移⾄⼀个新的⽬录中。
  2. 当第⼆个参数类型是⽂件时,mv命令完成⽂件重命名,此时,源⽂件只能有⼀个(也可以是源⽬录名),它将所给的源⽂件或⽬录重命名为给定的目标⽂件名。
  3. 当第⼆个参数是已存在的⽬录名称时,源⽂件或⽬录参数可以有多个,mv命令将各参数指定的源⽂件均移⾄目标目录中。

常⽤选项

  • -f :force强制的意思,如果⽬标⽂件已经存在,不会询问而直接覆盖

  • -i:若⽬标⽂件(destination)已经存在时,就会询问是否覆盖!

举例

 mv test1.txt test2.txt

🍃tail

语法:tail [必要参数] [选择参数] [⽂件]

功能:⽤于显⽰指定⽂件末尾内容,不指定⽂件时,作为输⼊信息进⾏处理。常⽤查看⽇志⽂件。

选项:

  • -f 循环读取
  • -n<⾏数> 显示行数

举例:

 tail -10 test1.txt

🎋vim

vim 是⼀个知名的⽂本编辑器. 使⽤ vim 可以进⾏⽂本编辑了.

vim 就相当于 Windows 的记事本. 只不过功能⽐记事本强⼤⼀些.

🚩创建/打开文件

在这里插入图片描述

🚩进入插入模式

vim打开⽂件后默认是普通模式.普通模式下键盘的按键表⽰⼀些特殊功能的快捷键.(例如按j并不是输⼊字⺟"j",⽽是表⽰光标往下移动⼀⾏).

需要进⼊插⼊模式才能进⾏⽂本编辑.

使用i键可以进⼊到插⼊模式.(左下⻆提⽰–INSERT–)然后就可以像记事本⼀样正常编辑了.
在这里插入图片描述

🚩保存

在插⼊模式下不能保存⽂件,需要先回到普通模式.按下 Esc 回到普通模式.

在普通模式下输⼊ :w ,再按下回⻋,即可保存⽂件.

🚩退出

在插⼊模式下不能退出,需要先回到普通模式.

退出时,分以下情况:

  1. ⽂件未修改:输⼊ :q ,再按下回⻋,即可退出
  2. ⽂件修改并保存:使⽤ :wq 同时执⾏保存和退出.
  3. ⽂件修改, 但不希望保存:使⽤ :wq! 进⾏强制退出

🌳grep、ps、netstat

🚩grep

语法:grep [参数]… [⽂件]…

功能:用于查找⽂件中是否包含指定字符串,并显⽰对应的⾏.

选项:

  • -n<行数>显示的行数
  • -w全字匹配.要求整个单词都完全相同的结果才能匹配出来,⽽不仅仅是⼀个单词的⼀部分.
  • -r递归查找.可以搜索多级⽬录下的所有⽂件.
  • –color⾼亮查找到的结果
  • –include指定查找某些⽂件
  • –exclude指定排除某些⽂件

举例使用如下;

 grep "hello" Hello.java

🚩ps

语法:ps [参数]…

功能:⽤于查看当前系统上运⾏的进程

选项:

  • a 显⽰⼀个终端的所有进程

  • u 以⽤⼾为主的格式来显⽰程序状况

  • x 显⽰所有程序,不⽌是会话中的进程

  • e 显⽰所有进程,包括系统守护进程

  • f 显⽰完整格式输出

举例:

ps aux # 显⽰系统上所有的进程
ps aux | grep "进程名"
ps aux | grep "进程id"

🚩netstat

语法:netstat [参数]…

功能:查看系统上的⽹络状态.

选项:

  • -a 显示所有正在或不在侦听的套接字
  • -n 显示数字形式地址⽽不是去解析主机、端⼝或⽤⼾名
  • -p 显示套接字所属进程的PID和名称

举例:

netstat -anp
netstat -anp | grep "进程名"
netstat -anp | grep "端⼝号"

🚩管道|

在前面的两个命令中我们可以看到这样一个符号|

我们称之为它为管道

管道是⼀种古⽼的"进程间通信"⽅式. 在 Linux 指令中可以使⽤ | 作为管道标记.

意思是将前⼀个指令标准输出的内容,作为第⼆个指令的标准输⼊内容.

使用举例如下:

ps -ef|grep "java"
ps -ef|head -10
tail -f log.txt|grep "Exception"

⭕总结

关于《【JavaEE进阶】 Linux常用命令》就讲解到这儿,感谢大家的支持,欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下

更多推荐