详解Linux常用命令

目录

1. ps 命令

2. top 命令

3. grep 命令

4. df 命令

5. tail 命令

6. head 命令

7. cat 命令

8. --help 和 man 命令

9. cd 命令

10. mkdir 命令

11. rm 命令

12. mv 和 cp 命令

13. touch 命令

14. vi 或 vim 命令

15. chmod 修改权限

16. 打包和压缩文件

17. kill 命令

18. ifconfig 命令

19. ping 命令

20. netstat命令

21. firewall 命令

小技巧

小结


Linux是一种开源的操作系统内核,它是基于UNIX的设计原则和思想而创建的。与其他操作系统相比,Linux具有稳定性高、安全性强、可扩展性好等特点,广泛应用于服务器、嵌入式设备和个人计算机等领域。

首先是一些使用Linux的基本操作步骤:

1. 安装Linux:选择适合你需求的Linux发行版(如Ubuntu、Fedora、CentOS等),下载并按照指引进行安装。

2. 登录:通过用户名和密码登录到Linux系统。

3. 命令行界面:Linux的主要交互界面是命令行终端。你可以使用命令行工具来执行各种操作

4. 文件系统:Linux使用树形结构的文件系统,以目录(文件夹)的形式组织文件。常见的文件操作命令包括`cd`(切换目录)、`ls`(列出目录内容)、`mkdir`(创建目录)、`rm`(删除文件或目录)等。

5. 包管理器:Linux发行版通常提供包管理器,用于安装、更新和卸载软件包。比如Ubuntu使用的是APT(Advanced Packaging Tool),CentOS使用的是YUM(Yellowdog Updater Modified)。

6. 用户和权限管理:Linux支持多用户环境,并通过权限控制保护系统安全。你可以创建新用户、修改用户权限等。

7. 网络配置:Linux可以用于构建网络服务和应用程序。你可以配置网络接口、设置IP地址、启动和停止网络服务等。

8. Shell脚本:Shell是一种命令解释器,可以编写脚本来执行一系列命令。Shell脚本可以自动化完成重复性任务。

9. 图形界面:除了命令行界面,Linux也支持图形用户界面(GUI),比如GNOME、KDE等。你可以通过鼠标和图形界面进行交互。

10. 学习资源:学习Linux可以参考官方文档、在线教程、书籍和论坛等资源。还可以尝试在虚拟机中安装Linux进行实践。


下面是关于Linux中常用的一些命令详解:

1. ps 命令

  • 描述:ps命令用于查看当前运行的进程信息。
  • 用法:ps [options]
  • 示例:
    • ps: 显示当前终端中运行的进程信息。
    • ps -a: 显示所有用户的所有进程信息。
    • ps -e: 显示所有进程信息,包括守护进程。
    • ps -f: 显示完整的进程信息,包括父进程ID和CPU使用情况等。

2. top 命令

  • 描述:top命令用于动态地监视系统的进程活动和系统负载情况。
  • 用法:top [options]
  • 示例:
    • top: 显示实时的进程活动和系统负载情况。
    • top -u username: 显示指定用户的进程活动。
    • top -p pid: 显示指定进程ID的详细信息。
    • top -d delay: 指定刷新间隔时间。

3. grep 命令

  • 描述:grep命令用于在文件中搜索匹配指定模式的文本行。
  • 用法:grep [options] pattern [file]
  • 示例:
    • grep keyword file.txt: 在文件file.txt中搜索匹配关键词keyword的文本行。
    • grep -i keyword file.txt: 忽略大小写地搜索关键词。
    • grep -r keyword directory: 递归地在指定目录下搜索关键词。

4. df 命令

  • 描述:df命令用于显示磁盘分区的使用情况。
  • 用法:df [options] [file|directory]
  • 示例:
    • df: 显示所有文件系统的使用情况。
    • df -h: 以人类可读的方式显示磁盘使用情况。
    • df -T: 显示文件系统类型。
    • df -i: 显示inode的使用情况。

5. tail 命令

  • 描述:tail命令用于显示文件的末尾内容。
  • 用法:tail [options] file
  • 示例:
    • tail file.txt: 显示文件file.txt的末尾10行内容。
    • tail -n 20 file.txt: 显示文件末尾20行内容。
    • tail -f file.txt: 实时显示文件末尾内容,并随文件变化自动更新。

6. head 命令

  • 描述:head命令用于显示文件的开头内容。
  • 用法:head [options] file
  • 示例:
    • head file.txt: 显示文件file.txt的开头10行内容。
    • head -n 5 file.txt: 显示文件开头5行内容。

7. cat 命令

  • 描述:cat命令用于查看文件内容,连接文件并打印到标准输出设备上。
  • 用法:cat [options] file
  • 示例:
    • cat file1.txt: 将file1.txt文件的内容打印到屏幕上。
    • cat file1.txt file2.txt: 连接file1.txt和file2.txt的内容并打印。
    • cat > file.txt: 创建一个新文件file.txt,并从键盘输入内容保存到该文件中(按Ctrl+D结束输入)。

8. --help 和 man 命令

--help

显示有关命令的帮助信息

man

查阅 command 命令的使用手册 man 是 manual 的缩写,是 Linux 提供的一个 手册,包含了绝大部分的命令、函数的详细使用。

有关man的操作键:

图片来源:史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!_Python_chichi的博客-CSDN博客

9. cd 命令

  • 描述:目录切换。
  • 用法:cd 目录
  • 示例:
    • cd /                切换到根目录
    • cd /usr           切换到根目录下的usr目录
    • cd ../              切换到上一级目录 或者  cd ..
    • cd ~               切换到home目录
    • cd -                切换到上次访问的目录

注意:Linux 所有的 目录 和 文件名 都是大小写敏感的

10. mkdir 命令

  • 描述:创建目录。
  • 用法:mkdir 目录
  • 示例:
    • mkdir    test            在当前目录下创建一个名为test的目录
    • mkdir    /usr/test     在指定目录下创建一个名为test的目录
    • mkdir -p                  可以递归地创建目录 

11. rm 命令

  • 描述:删除目录。
  • 用法:rm 目录
  • 示例:
    • 删除文件:
      rm 文件        删除当前目录下的文件
      rm -f 文件     删除当前目录的的文件(不询问)

    • 删除目录:
      rm -r 目录     递归删除当前目录下的目录
      rm -rf 目录    递归删除当前目录下的目录(不询问)

    • 全部删除:
      rm -rf *         将当前目录下的所有目录和文件全部删除
      rm -rf /*        将根目录下的所有文件全部删除(慎用!!!)

注意:rm不仅可以删除目录,也可以删除其他文件或压缩包,为了方便大家的记忆,无论删除任何目录或文件,都直接使用 rm -rf 目录/文件/压缩包

12. mv 和 cp 命令

  • 描述:重命名mv 和 拷贝cp 目录。
  • 示例:
    • 重命名:
      mv 当前文件 新文件名

    • mv的语法不仅可以对目录进行重命名和移动,而且也可以对各种文件、压缩包等进行重命名和移动的操作

    • 拷贝cp目录:

                cp 源文件 目标文件

13. touch 命令

  • 描述:新建文件。
  • 用法:touch 文件名
  • 示例:
    • touch redis.log            在当前目录下创建一个名为redis.log的文件

14. vi 或 vim 命令

图片来源:Linux常用命令-CSDN博客

  • 描述:编辑文件。
  • 示例:
    • vi/vim 文件名            使用编辑器打开文件
    • i                                插入,进入编辑模式
    • ESC                         进入命令行模式
    • :wq                           保存并退出编辑
    • :q!                            不保存并强制退出

15. chmod 修改权限

rwx:r代表可读,w代表可写,x代表该文件是一个可执行文件,如果rwx任意位置变为-则代表不可读或不可写或不可执行文件。

图片来源:Linux常用命令-CSDN博客

  • 示例:
    • chmod +x 文件            添加执行权限
    • chmod 777

16. 打包和压缩文件

不同的操作系统中常用的打包压缩方式是不同的。Windows 常用 rar ,Mac 常用 zip,Linux 常用 tar.gz

打包

图片来源:Linux常用命令-CSDN博客

解压

图片来源:Linux常用命令-CSDN博客

17. kill 命令

  • 描述:结束进程。
  • 示例:
    • kill pid 或者 kill -9 pid(强制杀死进程)        pid:进程号

18. ifconfig 命令

  • 描述:查看网卡信息。
  • 示例:
    • ifconfig 或 ifconfig | more
    • ifconfig | grep inet                   查看网卡对应的 IP 地址

19. ping 命令

  • 描述:检测当前计算机到目标计算机之间的网络连接状态
  • 示例:
    • ping IP地址                        检测到目标主机是否连接正常
    • ping 127.0.0.1                    检测本地网卡工作正常

20. netstat命令

  • 描述:查看当前系统端口
  • 示例:
    • netstat -an | grep 8080         搜索指定端口

21. firewall 命令

  • 描述:firewalld是CentOS/RHEL 7及以上版本中默认使用的动态防火墙管理工具
  • 用法:
    • firewall-cmd --state: 显示防火墙状态。
    • firewall-cmd --reload: 重新加载防火墙配置文件。
    • firewall-cmd --list-all: 列出当前防火墙规则。
    • firewall-cmd --add-service=service_name: 允许指定服务的流量通过防火墙。
    • firewall-cmd --remove-port=port/protocol: 移除指定端口和协议的规则。

以上是Linux命令中的一小部分,还有很多其他常用命令可供使用。

一般来说,标准的Linux发行版中,预装的命令数量大约在1000个左右。其中一些是基本的系统命令,例如ls、cd、mkdir、rm等,还有一些是高级工具,如awk、sed、grep等。此外,还有一些与特定应用程序相关的命令,如MySQL、Apache、Nginx等。

当然,实际使用中我们并不需要掌握所有的命令。对于大多数用户而言,熟悉几十个常用命令就足够了,包括系统管理和维护、文件操作、文本处理、网络工具等。以下是一些常见的Linux命令分类:

  1. 系统管理和维护:top、free、ps、systemctl、service、journalctl、crontab、shutdown等。

  2. 文件操作:ls、cd、cp、mv、rm、mkdir、rmdir、touch、chmod、chown等。

  3. 文本处理:cat、less、head、tail、grep、awk、sed等。

  4. 网络工具:ping、traceroute、netstat、ifconfig、route、ssh、scp、wget等。

小技巧

图片来源:史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!_Python_chichi的博客-CSDN博客

小结

首先,因为Linux是广泛使用的操作系统,许多服务器和云平台都是基于Linux。因此,作为程序员,了解并熟练掌握Linux命令可以有助于在不同的平台上进行开发和部署。

其次,Linux命令可以帮助程序员快速高效地完成许多日常任务,如文件操作、进程管理、系统监控等。此外,结合脚本编程,可以实现许多自动化的工作流程,提高工作效率。

第三,许多网络服务和应用程序都部署在Linux服务器上,因此程序员需要学习Linux命令来进行服务器管理、故障排查和性能优化等工作。

第四,在开发过程中,经常需要查看日志、分析进程、检查文件内容等操作,这些都可以通过Linux命令在终端中完成,比如使用grep、tail等命令。

第五,了解Linux命令可以帮助程序员更好地理解文件权限、用户管理和安全设置,从而编写更加安全可靠的软件和代码。

总的来说,学习和使用Linux需要一定的时间和经验积累,它具有强大的功能和广泛的应用领域,是许多技术人员和开发者的首选操作系统。学习Linux终端的命令可以使程序员更加全面地掌握计算机系统的运行机制和管理技能,同时提高工作效率和适应多样化的开发环境。

参考:

Linux常用命令-CSDN博客

史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!_Python_chichi的博客-CSDN博客


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/238237.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 权限管理

1 Linux 安全模型 AAA认证资源分派: 当用户登录时,系统会自动分配令牌 token,包括用户标识和组成员等等信息 1.1 用户 Linux 中每个用户是通过 User ID(UID)来唯一标识的。 1.2 用户组 Linux 中可以将一个或者多个…

如何通过添加香港高防IP来防御攻击?

​  针对外贸建站,租用香港服务器,除了站长们较为关注的价格外,安全性也是至关重要的。香港服务器在使用中可能会遭受到常见的 DDoS 网络攻击,而在 DDoS 防护这一块,您可以使用香港 DDoS 高防 IP 和香港高防服务器来…

python之logo编程

Logo标志是一种视觉符号,代表着一个品牌、企业或组织的形象。它通常采用图形、字母或字形来代表一个公司或品牌,起到对徽标拥有公司的识别和推广的作用。Logo的设计需要考虑多种因素,例如颜色搭配、字体选择和构图等,以创造出独特…

JDK21无法导入TimeUnit类

运行环境:windows11、IDEA2023.1.3、JDK21 问题描述:IDEA中无法导入java.util.concurrent.TimeUnit类。 以下截图是问题解决后的截图。有问题的时候未截图,说明一下,有问题的时候TimeUnit类是红色的,无法导入&#x…

ChatGPT有什么新奇的使用方式?

2023,ChatGPT几乎席卷了所有行业,并且具有不可测量的巨大潜力等着我们去挖掘。 越来越多人对ChatGPT的应用产生兴趣,知乎上“ChatGPT有什么新奇的使用方式?”这一个热门话题的兴起就是最好的证明。 写作,毫无疑问&…

AutoDL 使用记录

AutoDL 使用记录 1.租用新实例 创建实例需要依次选择:计费方式 → \to → 地区 → \to → GPU型号与数量 → \to → 主机 注意事项: 主机 ID:一个吉利的机号有助于炼丹成功价格:哪个便宜选哪个最高 CUDA 版本:影响…

Android--Jetpack--Lifecycle详解

富贵本无根,尽从勤里得 一,定义 Lifecycle 是一个具备宿主生命周期感知能力的组件。它持有组件(Activity/Fragment)生命周期状态信息,并且允许其观察者监听宿主生命周期状态变化。 顾名思义,Lifecycle的主…

SRE-架构框架-可靠性

Google-架构框架-可靠性 可靠性概览 Google Cloud 架构框架中的此类别介绍如何在云平台上构建和运营可靠的服务。此外,您还将了解一些支持可靠性的 Google Cloud 产品和功能。 该架构框架介绍了最佳实践,提供了实现建议,并说明了一些可用的…

UPDF 已集成 ChatGPT,AI 赋能注入新动能!

ChatGPT 掀起全球AI热潮,引发了世界范围内对AIGC未来会如何重塑各行各业的讨论与畅想。近日,由赛博爱思(上海)软件科技有限公司独立自主研发的国产 PDF 软件 UPDF完成版本更新,正式上线 AI 功能。据悉,UPDF AI完美集成了ChatGPT 的技术,可帮助用户智能阅读、总结、翻译、问答PD…

百度文心一言AI大模型,解读徐礼昭提出的“三体零售”模型

徐礼昭提出的“三体零售”模型是一种创新的零售理论模型,该模型将零售基础物质、零售商业能量和零售数字化系统视为一个相互作用的复杂有机体。这一理论模型为零售行业的发展提供了全新的视角和更高维度的认知。 首先,零售基础物质是零售行业的基石&…

目标检测——Fast R-CNN算法解读

论文:Fast R-CNN 作者:Ross Girshick 链接:https://arxiv.org/abs/1504.08083 代码:https://github.com/rbgirshick/fast-rcnn 目录 1、算法概述2、Fast R-CNN细节2.1The RoI pooling layer2.2 Fine-tuning for detection2.3 Fast…