当前位置: 首页 > news >正文

Linux常见基础命令

本文通过Xshell终端来获取Linux环境.

目录

1 连接是否成功

2 Linux常用命令

2.1 ls 

2.2 cd

2.3 pwd

2.4 touch cat echo

2.5 vim

2.6 mkdir

2.7 rm 

2.8 cp

2.9 mv

2.10 tail 

2.11 grep 

2.12 ps

2.13 netstat

3 程序部署常用命令


1 连接是否成功

当你登陆上云服务器上后, 会出现以下情形

 

 

2 Linux常用命令

2.1 ls 

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

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

常用选项:

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

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

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

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

-r 对⽬录反向排序。

-t 以时间排序。

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

这里注意, 如果你的机器是新的, ls命令过后可能你不会看到东西, 这不代表没有命令没有成功, 而是你的机器的home目录啥都没有.

ls 后面也可以跟上一个指定的目录.列出指定的目录下有哪些内容.

Linux上一定会有 / 这个目录. 就称为"根目录",就相当于windows的"此电脑".

通常情况下, 我们使用ls -l 的情况更多, 这个命令可以详细地列出目录下的内容. 通常也用 ll 来简写. 

 


 

 

2.2 cd

cd : change directory 切换目录

cd 切换到目录的名称, 这个目录可以是绝对路径, 也可以是相对路径. 

 

 

输入路径的时候, 可以不用全部敲出来, 用tab补齐也是可以的.

⼏个特殊的⽬录:

•  /称为根⽬录

•  .称为当前⽬录

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

2.3 pwd

如果说, 你cd了很多次, 找不到自己在哪了.

pwd就可以查看到当前位置的绝对路径.

 

2.4 touch cat echo

touch 创建文件

touch 文件名

一般来说, 用户的操作都是在主目录中进行的. 系统目录最好不要乱搞. 也就是不要在 / 目录中进行操作.

此时这个文件是空着的, 没有内容, 所以使用cat就没读出来内容. 

cat 读取文件

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

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

常⽤选项:

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

 

echo 内容 > 文件名

现在往上面那个文件中写入内容.

 

2.5 vim

通过上述的操作来读写一些简单的文件还好, 如果是读取一些复杂的文件, 或者是文件更长的文件, 就不太合适了.

使用vim完成针对文件进行更细颗粒度的编辑, 也就是一个文本编辑器, Linux上自带文本编辑器.

vim这个程序是非常复杂的, 不过作为普通的程序员, 懂得它其中的三个操作就可以了.

1. 打开文件   2. 保存退出  3.编辑文件

1. 打开文件  vim 文件名

2. 保存退出

先输入: 再按wq 就可以退出了.

 

3. 编辑文件

 

 

插入模式下, 输入的内容就是编辑的内容了, 就不是命令了.

 

那怎么退出插入模式呢? 按esc键就可以了.

退出时,分以下情况:

①⽂件未修改: 输⼊ :q ,再按下回⻋,即可退出

②⽂件修改并保存: 使⽤ :wq 同时执⾏保存和退出.

③⽂件修改,但不希望保存: 使⽤ :wq! 进⾏强制退出

再次打开文件, 可以看到刚刚写的内容已经保存了.

2.6 mkdir

make directory 创建目录

不能创建多层目录

但是加入选项就可以 

常⽤选项:

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

# 递归建⽴多个⽬录

mkdir –p test/test1 

2.7 rm 

remove 删除

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

功能:删除⽂件或⽬录

常⽤选项:

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

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

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

可以删除目录, 也可以删除文件

单独的rm只可以删除文件, 而不可以删除目录, 如果需要删除目录, 则要配合 -r 命令来完成.

 

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

2.8 cp

copy 复制

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

功能: 复制⽂件或⽬录

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

常⽤选项:

•-f或--force强⾏复制⽂件或⽬录,不论⽬的⽂件或⽬录是否已经存在

•-i或--interactive 覆盖⽂件之前先询问⽤⼾

•-r递归处理,将指定⽬录下的⽂件与⼦⽬录⼀并处理。若源⽂件或⽬录的形态,不属于⽬录或符号 链接,则⼀律视为普通⽂件处理

•-R或--recursive递归处理,将指定⽬录下的⽂件及⼦⽬录⼀并处理

 

cp hello.txt world.txt 

可以看到hello.txt中的内容被复制到了world.txt中了.

2.9 mv

move 移动

mv既可以起到移动的作用, 也可以起到重命名的效果.

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

功能:

1. 视mv命令中第⼆个参数类型的不同(是⽬标⽂件还是⽬标⽬录),mv命令将⽂件重命名或将其移 ⾄⼀个新的⽬录中。

2. 当第⼆个参数类型是⽂件时,mv命令完成⽂件重命名,此时,源⽂件只能有⼀个(也可以是源⽬ 录名),它将所给的源⽂件或⽬录重命名为给定的⽬标⽂件名。

3. 当第⼆个参数是已存在的⽬录名称时,源⽂件或⽬录参数可以有多个,mv命令将各参数指定的源⽂件均移⾄⽬标⽬录中。

常⽤选项

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

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

mv既可以起到移动的效果, 也可以起到重命名的效果.

2.10 tail 

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

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

• -f 循环读取

• -n 显⽰⾏数

tail -10 test1.txt

2.11 grep 

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

功能:⽤于查找⽂件中是否包含指定字符串, 并显⽰对应的⾏. 字符串搜索/匹配命令.

选项:

•-n显⽰的⾏数

•-w全字匹配. 要求整个单词都完全相同的结果才能匹配出来,⽽不仅仅是⼀个单词的⼀部分.

•-r递归查找. 可以搜索多级⽬录下的所有⽂件.

•--color ⾼亮查找到的结果

•--include 指定查找某些⽂件

•--exclude 指定排除某些⽂件

grep "hello" Hello.java

2.12 ps

语法:ps [参数]...

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

选项:

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

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

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

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

• f显⽰完整格式输出

ps aux # 显⽰系统上所有的进程

ps aux | grep " 进程名 "

ps aux | grep " 进程 id"

2.13 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"

3 程序部署常用命令

接下来介绍在云服务器上部署项目时, 常用的一些命令, 我们在启动项目时.

通过java -jar 启动项目, 可是当我们断开云服务器的连接后, 就发现自己的项目网站就不能访问了.

这个时候就要满足后台运行程序了.

使用nohup命令, 记得&号一定不要丢.

跟踪日志 

tail -f spring-blog.log

 

如果此时项目正常, 那么正常的日志, 我们是不需要看的, 我们要看的只有异常日志.所以接下来就要过滤日志了.

过滤日志

tail -f spring-blog.log | grep "Exception"

tail -f spring-blog.log | grep "ERROR"

查找进程 

 

杀掉进程 

 

 

相关文章:

  • Leetcode - 双周赛155
  • 超级好用的​​参数化3D CAD 建模​​图形库 (CadQuery库介绍)
  • 数字孪生的浪潮:从虚拟镜像到现实世界的 IT 变革
  • Rust 学习笔记:编程练习(一)
  • 计算机基础—(九道题)
  • 24体育NBA足球直播M28模板体育赛事直播源码
  • Rmarkdown输出为pdf的方法与问题解决
  • 从代码学习机器学习 - UMAP降维算法 scikit-learn版
  • Android 消息队列之MQTT的使用(二):会话+消息过期机制,设备远程控制,批量控制实现
  • JavaScript高级进阶(四)
  • Crusader Kings III 王国风云 3(十字军之王 3) [DLC 解锁] [Steam] [Windows SteamOS macOS]
  • Python(14)推导式
  • PCI/PXI 总线的可编程电阻卡
  • JVM模型、GC、OOM定位
  • leetcode 876. 链表的中间结点
  • 云上玩转DeepSeek系列之六:DeepSeek云端加速版发布,具备超高推理性能
  • SpringBoot实现接口防刷的5种高效方案详解
  • 安装qt4.8.7
  • cuDNN 安装、版本查看及指定版本删除操作指南
  • 社交电商和泛娱乐平台出海南美市场支付方式与策略
  • 光明网评论员:手机“二次放号”,需要重新确认“你是你”
  • 找化学的答案,解人类的命题:巴斯夫的“变革者”成长之道
  • 当AI开始深度思考,人类如何守住自己的慢思考能力?
  • 本周看啥|在电影院里听民谣,听摇滚,燥起来吧
  • “五一”假期云南铁路预计发送旅客超330万人次
  • 调查丨当节气出现“时差”,陕西的果农们经历着什么?