Linux系统

Linux常用命令,部署应用以及错误排查

Posted by Zheng Yang on September 20, 2024

Linux文件系统

Linux 文件系统简介

在 Linux 操作系统中,一切被操作系统管理的资源,如网络接口卡、磁盘、打印机、输入输出设备、普通文件或目录等,都被视为文件。这是 Linux 系统中一个重要的概念,即”一切都是文件”。

==这种设计使得 Linux 系统可以通过统一的文件接口来管理和操作不同类型的资源。==

  1. 统一的接口:用户和程序可以使用相同的命令和工具来操作不同类型的资源,这简化了编程和使用。

  2. 灵活性:新的资源类型可以很容易地集成到系统中,因为它们只需要实现文件系统的接口。

  3. 抽象:用户不需要关心背后的硬件或网络协议的复杂性,他们只需要通过文件操作来完成任务。

linux命令

目录切换

  • cd usr:切换到该目录下 usr 目录
  • cd ..(或cd../):切换到上一层目录
  • cd /:切换到系统根目录
  • cd ~:切换到用户主目录
  • cd - 切换到上一个操作所在目录

目录操作

  • ls:显示目录中的文件和子目录的列表。
  • llllls -l 的别名,可以看到该目录下的所有目录和文件的详细信息
  • mkdir [选项] 目录名:创建新目录(增)。例如:mkdir -m 755 my_directory,创建一个名为 my_directory 的新目录,并将其权限设置为 755,即所有用户对该目录有读、写和执行的权限。
  • find [路径] [表达式]:在指定目录及其子目录中搜索文件或目录(查),非常强大灵活。在/home目录下查找以 .txt 结尾的文件名:find /home -name "*.txt"
  • pwd:显示当前工作目录的路径。
  • rmdir [选项] 目录名:删除空目录(删)。例如:rmdir -p my_directory,删除名为 my_directory 的空目录。
  • cp [选项] 源文件/目录 目标文件/目录:复制文件或目录(移)。例如:cp file.txt /home/file.txt,将 file.txt 文件复制到 /home 目录下,并重命名为 file.txt
  • mv [选项] 源文件/目录 目标文件/目录:移动文件或目录(移),也可以用于重命名文件或目录。例如:mv file.txt /home/file.txt,将 file.txt 文件移动到 /home 目录下,并重命名为 file.txtmvcp 的结果不同,mv 相当于剪切。

文件操作

  • touch [选项] 文件名..:创建新文件或更新已存在文件(增)。例如:touch file1.txt file2.txt file3.txt ,创建 3 个文件。
  • ln [选项] <源文件> <硬链接/软链接文件>:创建硬链接/软链接。例如:ln -s file.txt file_link,创建名为 file_link 的软链接,指向 file.txt 文件。-s 选项代表的就是创建软链接,s 即 symbolic(软链接又名符号链接) 。
  • cat/more/less/tail 文件名:文件的查看(查) 。命令 tail -f 文件 可以对某个文件进行动态监控,例如 Tomcat 的日志文件, 会随着程序的运行,日志会变化,可以使用 tail -f catalina-2016-11-11.log 监控文件的变化 。
  • 复制文件:cp
  • 文件权限修改:chmod 例如:chmod 755 filename 命令会设置filename文件的权限,使得拥有者可以读/写/执行,而组用户和其他用户只能读/执行。
  • vi 文件名 #写文件
  • cat 文件名 #显示全部文件内容
  • 删除文件:rm
  • 需要连目录及目录下文件一块删除: rm -r
  • 删除空文件夹用什么命令? rmdir
  • 搜索文件:Grep 命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

安装软件

在基于Red Hat的系统中(如CentOS),可以使用 yum install packagename 命令来安装软件包。

其他

  • sudo + 其他命令:经由 sudo 所执行的指令就是 root 亲自执行。
  • grep 要搜索的字符串 要搜索的文件 --color:搜索命令,–color 代表高亮显示。
  • kill -9 进程的pid:杀死进程(-9 表示强制终止)先用 ps 查找进程,然后用 kill 杀掉。
  • shutdownshutdown -h now:指定现在立即关机;shutdown +5 "System will shutdown after 5 minutes":指定 5 分钟后关机,同时送出警告信息给登入用户。

进程

查看进程:可以使用 ps auxtop 命令来查看正在运行的进程。

网络通信

  • ping [选项] 目标主机:测试与目标主机的网络连接。
  • ifconfigip:用于查看系统的网络接口信息,包括网络接口的 IP 地址、MAC 地址、状态等。
  • netstat [选项]:用于查看系统的网络连接状态和网络统计信息,可以查看当前的网络连接情况、监听端口、网络协议等。

1. 列出所有网络连接

如果你想查看你的电脑当前所有的网络连接,你可以使用以下命令:

netstat -an

这里的 -a 表示显示所有的连接和监听端口,-n 表示以数字形式显示地址和端口号。

2. 只显示监听的端口

如果你只关心哪些端口正在被监听(等待连接),可以使用:

netstat -ln

这将列出所有正在监听的端口,但不包括已经建立的连接。

3. 查看特定端口的状态

如果你想查看特定端口(比如端口 80)的状态,可以使用:

netstat -an | grep :80

这里使用了 grep 命令来过滤输出,只显示包含 :80 的行。

  • ss [选项]:比 netstat 更好用,提供了更快速、更详细的网络连接信息。

Linux进程和线程

进程是计算机中的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。一个进程可以包含多个线程。

LinuxShell

Shell是Linux系统中的命令行解释器,它允许用户与系统进行交互,执行各种命令和操作