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

Linux(ubuntu)系统的一些基本操作和命令(持续更新)

操作:

Ctrl + Alt + T(打开命令终端)

Ctrl + Shift + '+'(放大命令终端窗口)

Ctrl + c(退出当前在终端运行的程序)

在命令终端窗口按Tab键可以补全要写的命令

命令:

pwd(查看当前所在文件夹)

cd 文件路径(到指定文件路径下)

cat 文件路径 (查看该文件路径下文件的内容(在同目录的可以不用写前缀路径))

vi 文件路径(进入vi模式查看该文件路径下文件的内容(在同目录的可以不用写前缀路径))

rm / -rf(强制删除根文件)

-rf 是命令行中的选项,通常在 Linux/Unix 系统中使用 rm 命令时见到。它是两个选项的组合,分别是:

  1. -r (recursive)
    表示递归删除,用于删除目录及其所有子文件和子目录。没有这个选项,rm 只能删除单个文件,不能直接删除目录。

  2. -f (force)
    表示强制删除,不会提示用户确认,也不会报告不存在的文件或权限问

rm 表示删除某个文件

/ 表示根文件(该位置敲其他名字就是删除该名字的文件,*代表所有)

rm -rf 或 rm * -rf删除当前文件夹

ls(查看当前文件夹下的文件)

mkdir test(在当前文件夹下创建一个名为test的文件夹)

touch file(在当前文件夹下创建一个名为file的文件(文件和文件夹不一样))

cp file file2 (将file的内容复制给file2(创建file2,内容是file的内容))

cp Music/ MusicAgain -rf(强制将Music底下的文件复制给MusicAgain(创建MusicAgain内容是Music))

ip addr(获取ip地址)

vi demo.c (打开并编辑demo.c文件,如果 demo.c 文件不存在,vi 会新建一个名为 demo.c 的文件)

在vi里先按ESC然后再输入:wq表示保存并退出文件

  • :w 表示保存 (write) 文件。
  • :q 表示退出 (quit) 编辑器。
  •  i 文本编辑模式

gcc demo1.c(demo1是你的 C 源文件,包含了用 C 语言编写的代码。gcc 会读取该文件并尝试将其编译成可执行程序。运行 gcc demo1.c 后,gcc 会生成一个名为 a.out 的默认可执行文件(在当前目录中))

./a.out(打开根目录路径下的a.out)

ls -l(列出当前用户对各文件的权限)(可读(r,4)、可写(w,2)、执行(x,1))

man 2 open(查看open函数的用法(C))

mv [选项] 源文件或目录 目标文件或目录

在 Linux 中,mv 命令用于移动文件或目录,或者重命名文件或目录。以下是它的用法及常见选项:

基本语法

mv [选项] 源文件或目录 目标文件或目录

常见场景

  1. 移动文件到另一个目录

    mv file.txt /path/to/destination/

    file.txt 移动到 /path/to/destination/

  2. 重命名文件

    mv oldname.txt newname.txt

    将文件 oldname.txt 重命名为 newname.txt

  3. 移动目录

    mv dir1 /path/to/destination/

    将目录 dir1 移动到 /path/to/destination/

  4. 同时移动并重命名

    mv file.txt /path/to/destination/newname.txt

    file.txt 移动到 /path/to/destination/ 并重命名为 newname.txt

常用选项

  • -i(交互模式)
    在覆盖文件前提示用户确认:

    mv -i file.txt /path/to/destination/

  • -f(强制模式)
    覆盖目标文件时不提示,直接覆盖(默认行为):

    mv -f file.txt /path/to/destination/

  • -n(不覆盖已存在文件)
    如果目标文件已存在,不执行操作:

    mv -n file.txt /path/to/destination/

  • -v(显示详细过程)
    显示每一步操作的详细信息:

    mv -v file.txt /path/to/destination/

注意事项

  1. 如果目标路径是一个已存在的文件,mv 会覆盖它,除非使用 -n 或其他选项。
  2. 如果目标路径是一个已存在的目录,mv 会将源文件或目录移动到目标目录中。

示例

  1. 批量移动文件

    mv *.txt /path/to/destination/

    将当前目录下所有 .txt 文件移动到 /path/to/destination/

  2. 安全移动

    mv -i important.txt /path/to/safeplace/

    如果目标路径存在同名文件,mv 会提示确认是否覆盖。

  3. 查看移动过程

    mv -v data.csv /path/to/archive/

    详细显示移动的源和目标路径。

date(显示当前时间)

>(重定向符号)

        

  • 这是 Shell 中的输出重定向符号
  • 将命令的标准输出(默认是终端)重定向到指定的文件中。
  • 如果文件已经存在,重定向操作会清空文件内容并写入新的数据。
  • 如果文件不存在,重定向操作会创建该文件。

        可以这样理解,date > date.txt 是一种类似“赋值”的操作,但它不是传统意义上的变量赋值,而是将命令的输出重定向到文件,从而实现“赋值”效果。

与终端输出的区别

  • 仅运行 date:输出显示在终端。
  • 运行 date > date.txt:输出不会显示在终端,而是直接写入到 date.txt 文件。
  • 如果文件 date.txt 已存在,重定向会覆盖其内容。
  • 如果希望追加内容而不是覆盖,可以使用 >>:(date >> date.txt)

ps(它可以列出系统中正在运行的进程,显示进程的PID(进程ID)、状态、占用资源等信息。ps 命令有很多选项,可以根据需求来过滤、排序或格式化输出的结果。)

在Linux系统中,ps 是一个非常常用的命令,用于显示当前系统中的进程信息。它可以列出系统中正在运行的进程,显示进程的PID(进程ID)、状态、占用资源等信息。ps 命令有很多选项,可以根据需求来过滤、排序或格式化输出的结果。

常见用法:

  1. 查看当前用户的进程

    ps
    

    这会列出当前用户正在运行的进程。

  2. 查看所有进程(包括其他用户的进程)

    ps -e
    

    或者:

    ps -A
    

    这会显示系统上所有正在运行的进程。

  3. 查看详细信息

    ps -ef
    

    这个命令会显示所有进程的详细信息,包括进程ID、父进程ID、启动时间、占用的CPU和内存等。

  4. 查看进程树

    ps -ejH
    

    或者:

    ps axjf
    

    这个命令以树状结构显示进程之间的关系。

  5. 根据进程名过滤

    ps aux | grep <process_name>
    

    通过管道结合 grep 来查找特定进程的详细信息。

常用选项:

  • -e-A:列出所有进程
  • -f:显示完整的进程信息,包括父进程ID(PID)、启动时间等
  • -u :显示指定用户的进程
  • -x:显示没有控制终端的进程(后台进程)
  • -H:显示进程的父子关系(进程树)
  • -o :自定义输出格式

通过组合这些选项,ps 能够帮助用户获取详细的进程状态信息,并对系统的性能进行监控和调优。

ps auxps 命令的一个常见用法,它用于显示系统上所有正在运行的进程,包括其他用户的进程,并且提供了非常详细的信息。

解释:

  • a:显示所有用户的进程,而不仅仅是当前用户的进程。包括其他用户的进程。
  • u:以用户友好的格式显示进程信息,列出进程的所有者、CPU占用率、内存占用率、启动时间等。
  • x:包括没有控制终端的进程,通常是一些后台进程或者守护进程。

输出内容:

ps aux 命令的输出通常包括以下几列:

  • USER:进程所属的用户
  • PID:进程的ID
  • %CPU:进程占用的CPU百分比
  • %MEM:进程占用的内存百分比
  • VSZ:进程占用的虚拟内存大小(以KB为单位)
  • RSS:进程占用的实际物理内存大小(以KB为单位)
  • TTY:进程所关联的终端(如果有的话)
  • STAT:进程状态,例如:
    • S:睡眠状态(等待事件发生)
    • R:运行状态(正在运行或准备运行)
    • Z:僵尸状态(进程已终止但仍在进程表中)
  • START:进程的启动时间
  • TIME:进程占用的CPU时间
  • COMMAND:启动该进程的命令

示例:

ps aux

输出示例:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.1  0.0  22588  1684 ?        Ss   09:20   0:02 /sbin/init
root         2  0.0  0.0      0     0 ?        S    09:20   0:00 [kthreadd]
...

这种格式的输出非常适合用来查看系统的整体进程状态,尤其是在进行性能调优、资源管理或故障排查时。

常见组合:

  • 查找某个进程

    ps aux | grep <process_name>
    

    这可以帮助查找某个特定进程(比如 grep 查询命令)。

  • 查看进程占用最多的资源

    ps aux --sort=-%cpu
    

    按照CPU占用率排序(从高到低)。

    ps aux --sort=-%mem
    

    按照内存占用率排序(从高到低)。

ps aux 是一个非常强大的工具,能够帮助你全面了解系统的进程状态,并帮助诊断和优化系统性能。

top(类似windows的任务管理器)

top 是一个实时监控 Linux 系统资源(如 CPU、内存)和进程的命令。它动态显示系统状态,并可以对进程进行排序、过滤和管理。

常用功能:

  • 实时显示资源使用:显示 CPU、内存、交换空间等使用情况。
  • 动态更新:默认每 3 秒刷新一次。
  • 交互式命令:按 P 按 CPU 排序、按 M 按内存排序、按 k 杀死进程等。
  • 显示进程树:按 V 查看进程的父子关系。

示例:

top

显示的内容包括:

  • 系统负载、CPU 使用率、内存使用等。
  • 进程列表:PID、进程名、CPU 和内存占用等。

退出:按 q 退出 top


http://www.mrgr.cn/news/78437.html

相关文章:

  • shell(2)永久环境变量和字符串显位
  • RabbitMQ 安装延迟队列插件 rabbitmq_delayed_message_exchange
  • 多级反馈队列调度算法
  • 群聊前选择患者功能的实现
  • 【Flink-scala】DataStream编程模型之 窗口的划分-时间概念-窗口计算程序
  • thinkphp中对请求封装
  • java全栈day10--后端Web基础(基础知识)之续集
  • 全面了解 Cookies、Session 和 Token
  • 华为OD机试真题---开心消消乐
  • 《大气科学学报》
  • C++中智能指针的使用及其原理 -- RAII,内存泄漏,shared_ptr,unique_ptr,weak_ptr
  • 算法交易 - 理解什么是空头交易
  • Android 自定义应用选择器对话框
  • 浅谈网络 | 应用层之HTTPS协议
  • android 安全sdk相关
  • 韩顺平 一周学会Linux | Linux 实操篇-组管理和权限管理
  • 音视频入门基础:MPEG2-TS专题(8)——TS Header中的适配域
  • 算法设计作业
  • 面试手撕题积累
  • 在 Spring Boot 中构造 API 响应的最佳实践
  • 彻底理解微服务配置中心的作用
  • PyQt学习笔记
  • (长期更新)《零基础入门 ArcGIS(ArcMap) 》实验二----网络分析(超超超详细!!!)
  • android集成FFmpeg步骤以及常用命令,踩坑经历
  • 【Leetcode 每日一题】743. 网络延迟时间
  • 使用ENSP实现NAT