好像接触运维有一年的时间了吧,查的资料什么的,也算是挺多的了。再加上最近看的《Linux就该这么学》,也算是把自己最近学的东西系统化了一下。今天就来说说,常用的Linux命令有什么,如果你正在学习Linux相关命令,希望能够给你一些启发。

➢Shell

Shell是一个命令行模式,充当的是人与内核之间的翻译官,用户把一些命令“告诉”终端,它就会调用相应的程序服务去完成相应的工作。Linux系统默认使用的终端是Bash(Bourne-Again SHell)解释器。(如果你够细心,你应该能发现)



因为bash的存在,所以我们可以:

通过上下方向键来调取执行过的Linux命令
命令或参数,输入前几位,然后双Tab键之后,就会自动补齐剩下的
强大的批处理脚本
实用的环境变量功能

➢查看帮助命令

Linux系统中,有很多命令,我怎么知道某个命令是干嘛用的,这时可以执行帮助命令查看:

man man

多看帮助,少走弯路,这个命令里面的帮助信息量很多,好好钻研~

一般执行Linux命令格式都是这样的:

命令名称 [命令参数] [命令对象]

注意:它们之间是有空格的。

➢常用系统命令

  • echo命令
  • echo命令用于在终端输出字符串或变量提取后的值,格式为“echo [字符串] [$变量]”

  • date命令
  • date命令用于显示及设置系统的时间或日期,格式为“date [选项] [指定的格式]”

    这个命令在日常工作中查找备份数据时很常用,当然了,前提是你的备份数据和日期有关。

    查看当前系统时间的date命令:date

    按照“年-月-日 小时:分钟:秒”的格式查看当前系统时间:date “+%y-%m-%d %H:%M:%S”

    设置系统时间:date -s+时间格式

  • reboot命令
  • 重启命令。这个命令很常用,毕竟虚拟机卡掉的时候,没有重启解决不了的问题。如果有,那就再重启一次~

  • poweroff命令
  • 关机命令。这个就不多说了

  • wget命令
  • 用于在终端中下载网络文件,格式为”wget [参数] 下载地址”。

    wget是一种安装工具,相当于迅雷。

  • yum命令
  • 用于安装软件。格式为”yum install 软件名称”

  • ps命令
  • 查看系统中的进程状态,格式为”ps [参数]”

    比如查看Nginx的状态:

  • top命令
  • 用于动态监视进程活动与系统负载等信息。直接top即可



    上面的图,很多小伙伴都不清楚代表的是什么意义。在这里解释一下:

    第1行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)

    第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。一般情况下,只要没有僵死的进程,虚拟机就完全没问题。

    第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中100.id表示有100%的CPU处理器资源处于空闲,毕竟这台虚拟机刚起来~

    第4行:物理内存总量、内存空闲量、内存使用量、作为内核缓存的内存量

    第5行:虚拟内存总量、虚拟内存空闲量、虚拟内存使用量、已被提前加载的内存量

  • pidof命令
  • 用于查询某个指定服务进程的PID值,格式为“pidof [参数] [服务名称]”

    一般和kill命令一起用

  • kill命令
  • 用于终止某个指定PID的服务进程,格式为”kill [参数] [进程PID]”

    先使用pidof命令查出想要停止的服务的PID,然后使用kill命令杀掉该进程。

  • killall命令
  • 用于终止某个指定名称的服务所对应的全部进程。有时候,父进程下还有子进程,为了方便,直接killall,将指定服务的全部进程都杀掉。

    格式为”killall [参数] [进程名称]”

    ➢系统检测命令

  • ifconfig命令
  • 用于获取网卡配置与网络状态等信息,格式为”ifconfig [网络设备] [参数]”

  • uname命令
  • 用于查看系统内核与系统版本等信息。格式为”uname [-a]”

  • uptime命令
  • 查看系统的负载信息,可以显示当前系统时间、系统已运行时间、启用终端数量以及平均负载值等信息

  • free命令
  • 用于显示当前系统中内存的使用量信息。

  • who命令
  • 用于查看当前登入主机的用户终端信息,格式为”who [参数]”

  • last命令
  • 用于查看所有系统的登录记录。格式为”last [参数]”

    上次有人找我问我,是不是登录XX虚拟机了,我还奇怪,他怎么知道。这下知道原因了~哈哈哈

  • history命令
  • 用于显示历史执行过的命令,格式为”history [-c]”

  • sosreport命令
  • 用于收集系统配置及架构信息并输出诊断文档,格式为:sosreport

    ➢工作目录切换命令

  • pwd命令
  • pwd命令用于显示用户当前所处的工作目录。

  • cd命令
  • 用户切换工作路径。格式为”cd [目录名称]”

    这个命令可以说是非常常用了。

    cd -:返回到上一次所处的目录
    cd..:进入上一级目录
    cd ~:切换到当前用户的家目录
  • ls命令
  • 用于显示目录中的文件信息,格式为”ls [选项] [文件]”

    这个命令也挺常用:

    ls -a:查看全部文件(包括隐藏文件)
    ls -l:查看文件属性、大小等详细信息

    ➢文本文件编辑命令

  • cat命令
  • 用于查看纯文本文件(内容较少的),格式为”cat [选项] [文件]”

    如果在查看文本内容时,还想顺便显示行号,可以尝试一下,在cat后面追加一个-n参数:

    cat -n 文件
  • more命令
  • 用于查看纯文本文件(内容较多的),格式为”more [选项] [文件]”

  • head命令
  • 用于查看纯文本文档的前N行,格式为”head [选项] [文件]”

    ➢文件目录管理命令

  • mkdir命令
  • 用于创建空白的目录,格式为”mkdir [选项] [目录]”

    mkdir命令除了能创建单个空白目录之外,还能结合-p命令,来递归创建出具有嵌套叠层关系的文件目录

  • cp命令
  • 用于复制文件或目录。格式为”cp [选项] 源文件 目标文件 ”

    cp命令的参数及作用:

    参数 作用
    -p 保留原始文件的属性
    -d 若对象为“链接文件”,则保留该“链接文件”的属性
    -r 递归持续复制(用于目录)
    -i 若目标文件存在,则询问是否覆盖
    -a 相当于执行cp -pdr
  • mv命令
  • 用于剪切文件或将文件重命名,格式为”mv [选项] 源文件 [目标路径|目标文件名]

  • file命令
  • 用于查看文件的类型,格式为”file 文件名”

    ➢打包压缩与搜索命令

  • tar命令
  • 用于对文件进行打包压缩或解压,格式为”tar [选项] [文件]”

    tar命令的参数及其作用

    参数 作用
    -c 创建压缩文件
    -x 解开压缩文件
    -t 查看压缩包内有哪些文件
    -v 显示压缩或解压的过程
    -p 保留原始的权限与属性
    -P 使用绝对路径来压缩
    -C 指定解压到的目录
  • grep命令
  • 用于在文本中执行关键词搜索,并显示匹配的结果。格式为”grep [选项] [文件]”

    grep命令的参数及其作用

    参数 作用
    -b 将可执行文件(binary)当作文本文件(text)来搜索
    -c 仅显示找到的行数
    -i 忽略大小写
    -n 显示行号
    -v 反向选择-仅列出没有“关键词”的行
  • find命令
  • 用于按照指定条件来查找文件。格式为”find [查找路径] 寻找条件 操作”

    在Linux系统中,搜索工作一般都是通过find命令来完成的。

    ➢有关服务启动与关闭

    有时候,我们需要重启,关闭,启动某个服务,这几个命令也是挺常用的

    systemctl start 服务名称       启动服务
    systemctl restart 服务名称 重启服务
    systemctl stop 服务名称 停止服务
    systemctl enable 服务名称 加入到开机启动项
    systemctl disable 服务名称 取消加入到开机启动项
    systemctl status 服务名称 查看服务状态

    ➢后记

    常用的大概就是这么多了,但是实际上成为自己的东西,成为自己的知识,还是要多用,多实践。

    本篇文章内容参考《Linux就该这么学》,很不错的一本书,向大家推荐一下~

    【Linux-Redhat】新手需要知道的Linux命令的更多相关文章

    1. 每个极客都应该知道的Linux技巧

      每个极客都应该知道的Linux技巧 2014/03/07 | 分类: IT技术 | 0 条评论 | 标签: LINUX 分享到:18 本文由 伯乐在线 - 欣仔 翻译自 TuxRadar Linux. ...

    2. 新手指南: Linux 新手应该知道的 26 个命令

      当你进入了 Linux 的世界,在下载.安装 了某个 Linux 发行版,体验了 Linux 桌面并安装了一些你喜爱和需要的软件之后,应该去了解下 Linux 真正的魅力所在:命令行.每一个 Linu ...

    3. Linux 新手应该知道的 26 个命令

      https://linux.cn/article-6160-1.html 当你进入了 Linux 的世界,在下载.安装 了某个 Linux 发行版,体验了 Linux 桌面并安装了一些你喜爱和需要的软 ...

    4. 你应该知道的Linux历史

      说道linux的历史不得不说的就是unix,我们的linux就是类unix系统: 1969年第一台unix系统 贝尔实验室 1970年C语言诞生,对unix内核重新编写 system V(AT& ...

    5. 29 个你必须知道的 Linux 命令

      虽然Linux发行版支持各种各样的饿GUI(graphical user interfaces),但在某些情况下,Linux的命令行接口(bash)仍然是简单快速的.Bash和 Linux Shell ...

    6. 160811、29 个你必须知道的 Linux 命令

      虽然Linux发行版支持各种各样的饿GUI(graphical user interfaces),但在某些情况下,Linux的命令行接口(bash)仍然是简单快速的.Bash和 Linux Shell ...

    7. 应该知道的linux命令

      常用命令 1.在compose Bar下可以对多个服务器同时进行操作.选择To All Sessions 2. 查看JAVA进程: ps -ef | grep java ps auxf | grep ...

    8. Java程序员应该知道的linux命令

      1.查看Java进程:ps -ef|grep java,ps auxf|grep jva; 2.杀死所有Java进程: pkill java, kill -9 进程ID: 3.进入目录:cd /usr ...

    9. 应该知道的Linux技巧

      作者:陈皓(花名:钻风) 这篇文章来源于Quroa的一个问答<What are some time-saving tips that every Linux user should know?& ...

    随机推荐

    1. 如何在Mac上安全彻底的卸载软件?

      文章来源:知乎 收录于:风云社区(SCOEE)[提供mac软件下载] 更多专题,可关注小编[磨人的小妖精],查看我的文章,也可上[风云社区 SCOEE],查找和下载相关软件资源. (一)综合类: 新买 ...

    2. Linux shell 自动删除n天前日志

      linux是一个很能自动产生文件的系统,日志.邮件.备份等.虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情.不用你去每天惦记着是否需要清理日志 ...

    3. 网络编程基础【day10】:多线程效果演示(二)

      本节内容 1.引子 2.并发多线程效果演示 一.引子 我们说单核的cpu只能同时执行一个任务,但是给我们的一个幻觉是可以执行多个,因为cpu太快了.它是怎么实现的呢?就是上下文切换,它不是轮询着切换的 ...

    4. Python正则匹配之有名分组

      参考:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html # re.match import re m = re.match(r'( ...

    5. Web服务调试可用,发布之后访问出错

      今天重装了系统,然后发现之前的Web服务DataService不能用了.将其设置为启动项,运行的结果是 跟踪发现,是mysql.data.dll的版本不对.所以要找到所有版本不对的该dll,将其替换成 ...

    6. Silverlight界面设计

      d:DesignHeight="300" d:DesignWidth="400"> 并不会限定Grid的大小,最终的效果,还要根据Grid的大小,Grid ...

    7. Keil5创建GPIO

      软件仿真如下图 Main.c内容 #include "stm32f10x.h" int main(void) { GPIO_InitTypeDef GPIO_InitStructu ...

    8. Javaweb学习笔记——(十四)—————— 服务器端验证注册登入表单项目

      项目:https://download.csdn.net/download/qq_40223688/10463436 项目 功能: *注册 *登录--------------------------- ...

    9. CoreText实现图文混排

      CoreText的介绍 Core Text 是基于 iOS 3.2+ 和 OSX 10.5+ 的一种能够对文本格式和文本布局进行精细控制的文本引擎.它良好的结合了 UIKit 和 Core Graph ...

    10. 10个免费的javascript富文本编辑器(jQuery and non-jQuery)

      祝愿园子里的朋友圣诞节快乐. 本文介绍了10个免费易用富文本编辑器(rich text editors,RTE),其中5个是Jquery插件,另外5个是非Jquery富文本编辑器 简介 Javascr ...