百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

新手必须掌握的Linux命令(1)(linux新手常用命令)

ahcoder 2025-04-09 13:42 12 浏览

执行查看帮助命令

常见执行Linux 命令的格式是这样的:

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

注意:命令名称,命令参数,命令对象之间请用空格键分隔。

命令对象一般是指要处理的文件,目录,用户等资源,而命令参数可以用长格式(完整的选项名称),也可以用端格式(单个字母的缩写)。

man命令中的常用按键以及用途:

按键

用处

空格键

向下翻一页

PD

向下翻一页

PU

向上翻一页

home

直接前往首页

end

直接前往尾页

/

从上至下搜索某个关键词,如"/linux"

?

从下至上搜索某个关键字,如"?linux"

n

定位到下一个搜索到的关键词

N

定位到上一个搜索到的关键字

q

退出帮助文档

man 命令帮助信息的结构以及意义:

结构名称

代表意义

NAME

命令的名称

SYNOPSIS

参数的大致使用方法

DESCRIPTION

介绍说明

EXAMPLES

演示

OVERVIEW

概述

DEFAULTS

默认的功能

OPTIONS

具体的可用选项

ENVIRONMENT

环境变量

FILES

用到的文件

SEE ALSO

相关的资料

HISTORY

维护历史和联系方式

常用系统工作命令

  • echo 命令

echo 命令用于终端输出字符串或变量提取后的值,格式为"echo [字符串 | $变量]"。

例如,把指定字符串"Linux.com" 输出到终端屏幕的命令为:

$ echo Linux.com
Linux.com

下面,我们使用$变量的方式提取SHELL的值,并将其输出到屏幕上:

$ echo $SHELL
/bin/bash
  • date 命令

date命令用于显示及设置系统的时间及日期,格式为"date [选项] [+指定的格式]"。

只需要在date命令中输入以"+" 号开头的参数,即可按照指定格式来输出系统的时间或日期,这样在日常工作时便可以把备份数据的命令与指定格式输出的时间信息结合到一起。

date命令中的参数以及作用:

参数

作用

%t

跳格

%H

小时(00~23)

%I

小时(00~12)

%M

分钟(00~59)

%S

秒(00~59)

%j

今年中的第几天

按照默认格式查看当前系统时间的date命令如下所示:

$ date
Tue Aug 23 01:54:14 EDT 2022

按照 "年-月-日 小时:分钟:秒" 的格式查看当前系统时间的date命令如下所示:

$ date "+%Y-%m-%d %H:%M:%S"
2022-08-23 01:56:41

date命令中的参数%j可用来查看今天是当年中的第几天,这个参数能够很好地区分备份时间的新旧,即数字越大,越靠近当前时间,该参数的使用方式以及显示结果如下所示:

$ date "+%j"
235
  • wget命令

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

wget命令的参数以及作用

参数

作用

-b

后台下载模式

-P

下载到指定目录

-t

最大尝试次数

-c

断点续传

-p

下载页面内所有资源,包括图片,视频等

-r

递归下载

尝试使用wget命令从以下路径下载电子文档,执行该命令后的下载效果如下:

$ wget https://www.runoob.com/html/html-tutorial.html
--2022-08-23 02:33:31--  https://www.runoob.com/html/html-tutorial.html
Resolving www.runoob.com (www.runoob.com)... 60.188.66.41
Connecting to www.runoob.com (www.runoob.com)|60.188.66.41|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘html-tutorial.html’

html-tutorial.html               [ <=>                                           ]  62.53K  --.-KB/s    in 0.02s

2022-08-23 02:33:31 (3.18 MB/s) - ‘html-tutorial.html’ saved [64028]

接下来,我们使用wget命令递归下载https://www.runoob.com/ 网站内的所有页面数据以及文件,下载完后会自动保存到当前路径下一个名为www.runoob.com的目录中,执行该操作的命令为wget -r -p https://www.runoob.com, 该命令的执行结果如下:

wget -r -p https://www.runoob.com
  • ps命令

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

ps 命令的参数以及作用

参数

作用

-a

显示所有进程(包括其它用户的进程)

-u

用户以及其它详细信息

-x

显示没有控制终端的进程

Linux 系统中时刻运行着许多进程,如果能够合理地管理它们,则可以优化系统的性能,在Linux 系统中,有几种常见的进程状态,分别为运行,中断,不可中断,僵死与停止,其各自含义如下所示:

R(运行) : 进程正在运行或在运行队列中等待
S(中断) : 进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该状态
D(不可中断) : 进程不响应系统异步信号,即便用kill命令也不能将其中断
Z(僵死) : 进程已经停止,但进程描述符依然存在,直到父进程调用wait4()系统函数后将进程释放
T(停止) : 进程收到停止信号后停止运行
  • top 命令

top命令用于动态地监视进程活动与系统负载等信息,其格式为top。

top 命令相当强大,能够动态地查看系统运维状态,完全将它看做Linux中的"Windows任务管理器"。top命令的运行界面如下:

top命令执行结果的前5行为系统整体的统计信息,其所代表的含义如下:

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

第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。

第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。
其中数据均为CPU数据并以百分比格式显示,例如“97.1 id”意味着有97.1%的CPU处理器资源处于空闲。

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

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

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

每个进程的进程号码值(PID)是唯一的,因此可以通过PID来区分不同的进程。

  • killall 命令

killall 命令用于终止某个指定名称的服务所对应的全部进程,格式为:"killall [参数] [服务名称]"。

通常来讲,复杂软件的服务程序会有多个进程协同为用户提供服务,如果逐个来结束这些进程会比较麻烦,此时可以使用killall命令来批量结束某个服务程序带有的全部进程。下面以httpd 服务程序为例,来结束其全部进程。

# pidof httpd
13577 13576
# killall httpd
# pidof httpd

系统状态检测命令

  • ifconfig 命令

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

使用ifconfig命令来查看本机当前的网卡配置与网络状态等信息时,其实主要查看的就是网卡名称,inet参数后面的IP地址,ether参数后面的网卡物理地址(又称为MAC地址),以及RX,TX的接收数据包与发送数据包的个数及累计流量:

$ ifconfig
enp2s0    Link encap:Ethernet  HWaddr 00:e0:81:dd:5d:11
          inet addr:192.168.130.201  Bcast:192.168.250.255  Mask:255.255.255.0
          inet6 addr: fe80::2e0:81ff:fedd:5d11/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:174299148 errors:0 dropped:12 overruns:0 frame:0
          TX packets:191511858 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:57773995400 (57.7 GB)  TX bytes:148179496863 (148.1 GB)
          Interrupt:17 Memory:fbae0000-fbb00000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:11704883 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11704883 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:259603543968 (259.6 GB)  TX bytes:259603543968 (259.6 GB)
  • uname命令

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

在使用uname命令时,一般会固定搭配上-a参数来完整地查看当前系统的内核名称,主机名,内核发行版本,节点名,系统时间,硬件名称,硬件平台,处理器类型以及操作系统名称等信息。

$ uname -a
Linux ubuntu-1 4.4.0-62-generic #83-Ubuntu SMP Wed Jan 18 14:10:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux


  • uptime 命令

uptime 用于查看系统的负载信息,格式为uptime。

uptime 命令可以显示当前系统时间,系统已运行时间,启用终端数量以及平均负载值等信息。平均负载值指的是系统在最近1分钟,5分钟,15分钟内的压力情况;负载值越低越好。

$ uptime
03:34:14 up 233 days,  4:23, 32 users,  load average: 0.57, 0.31, 0.18
  • free命令

free用于显示当前系统中内存的使用量信息,格式为 "free [-h]"。

为了保证Linux 系统不会因资源耗尽而突然宕机,需要时刻关注内存的使用量,在使用free命令时,可以结合使用-h参数以更人性化的方式输出当前内存的实时使用量信息。

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           7.8G        441M        497M         94M        6.9G        6.9G
Swap:           15G        106M         15G
  • who 命令

who 用于查看当前登录主机的用户终端信息,格式为 "who [参数]"。

这个命令可以快速显示出所有正在登录本机的用户的名称以及他们正在开启的终端信息。

  • histroy 命令

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

执行histroy 命令能显示出当前用户在本地计算机中执行过的最近1000条命令记录。还可以自定义/etc/profile文件中的HISTSIZE变量值。在使用history命令时,如果使用-c参数则会清空所有的命令历史记录。

$ history
    1  ls
    2  cd m-otn-common/
    3  ls
    4  ./sync_ctags.sh
    5  ls
    6  g "THEADER_DATA" --include "*.h" ./
    7  vim drivers/spi/inc/fpga_comm_if.h +106
    8  apps
    9  svn log --limit 3
   10  svn log -r 2247 -v
   11  cd ..
   12  g "ctc_port_get_mac_link_up" --include "*.c" ./
   ...

历史命令会被保存到用户家目录中的.bash_history文件中,Linux系统中以点(.) 开头的文件均代表隐藏文件,这些文件大多数为系统服务文件,可以用cat命令查看文件内容。

# cat ~/.bash_history

要清空当前用户在本机上执行的Linux 命令历史记录信息,可执行如下命令:

# history -c
  • sosreport 命令

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

$ sosreport

sosreport (version 3.9)

no valid plugins were enabled
no valid plugins were enabled

相关推荐

Linux 6.15将更新媒体子系统:高通Iris驱动首次亮相

IT之家3月24日消息,科技媒体phoronix昨日(3月23日)发布博文,报道称Linux6.15内核将于本周启动合并窗口,首批提交的PullRequest请求之一,就...

Ubuntu 25.04发行版登场:Linux 6.14内核,带来多项技术革新

IT之家4月18日消息,科技媒体linuxiac昨日(4月17日)发布博文,报道称代号为PluckyPuffin的Ubuntu25.04发行版正式上线,搭载最新Linu...

WordPress 6.8 版本发布:聚焦性能升级,代号“Cecil”

WordPress6.8版本发布:聚焦性能升级,代号“Cecil”全球最受欢迎的内容管理系统(CMS)WordPress正式推出最新版本6.8,代号“塞西尔”(Cecil),以此致敬传奇钢琴家...

Linus Torvalds接受微软Hyper-V升级 下一代Linux启动会更快

虽然Windows的粉丝和Linux的粉丝经常喜欢进行激烈的键盘大战,但操作系统的制造商们自己也了解彼此的优缺点。毫无疑问,微软也明白这一点,事实上,它甚至鼓励用户尝试Linux,尽管是使用...

Debian 12发布:Linux内核升级6.1(debian更新内核)

IT之家6月11日消息,Debian是最古老的GNU/Linux发行版之一,也是许多其他基于Linux的操作系统的基础,包括Ubuntu、Kali、MX和树莓派OS等。这...

Linux Mint预告新功能:升级Nemo搜索、LMDE 7支持OEM安装

IT之家4月10日消息,LinuxMint发布了最新月度简讯,宣布增强Nemo文件管理器的文件搜索功能、Cinnamon桌面环境开始支持Wayland、LMDE7(LinuxM...

Linux 6.2合并大量网络系统更新:推进Wi-Fi 7和800 Gbps网络

IT之家12月15日消息,Linux6.2合并窗口期内已经确认将会合并大量网络子系统更新。和以往版本相同,Linux6.2内核更新周期在网络功能上有大量的改进,更多的细节可以访问这条...

Linux内核升级实践指南(linux内核怎么升级)

Linux内核升级是一个需要谨慎操作的过程,但掌握正确方法后可以显著提升系统性能、安全性或硬件兼容性。以下是一份详细的实践指南,涵盖主流方法及注意事项:一、准备工作查看当前内核版本bashuname...

Linux又将迎来大版本更新 5.20版可能会被称为Linux 6.0

如果你错过了昨天Linux5.19的发布公告,那么这一消息需要回顾一下:被称为Linux5.20的开发中的内核很可能会被称为Linux6.0。根据LinusTorvalds对现代版本的划分,L...

周六的娱乐就是安装一台OracleLinux虚拟机(一)

每个人有每个人的娱乐方式。老父亲可能喜欢摆弄一些机械工具修修补补。我趁着周六安装一套OracleLinux,寓学于乐。在oracle网站上,下载VirtualBox,现在最新版本是7.0.8。在安装过...

Linux系统下Gaussian 16的安装(linux系统如何安装新软件)

Gaussian是目前使用最多的量子化学计算软件,当前最新的版本为Gaussian16C.01。理论上来说Gaussian并不需要安装,因为高斯一般是不出售源代码的,只有二进制文件,以Gaussi...

「Linux基础」VMWare虚拟机安装CentOS后配置静态ip

在VMWare中安装本地虚拟机CentOS7操作系统,动态IP地址会经常变化,不便于管理与实验。为了便于实验,考虑设置成静态IP地址,目标是本地局域网可以通过NAT网关互相访问,且能连接互联网。由于是...

Win10虚拟机,Hyper-V安装CentOS,一次成功

打开控制面板,选择程序选择启用或关闭Windows功能选中Hyper-V下所有的组件。提示我们需要,重启计算机,保存我们的文件,之后点击“立即重新启动”选择开始菜单,输入Hy,就可以打开虚拟机管理器了...

如何在Windows 10中的Hyper-V虚拟机上安装CentOS Linux

注意双重引导的一种可行且相当不错的替代方法是在虚拟机上安装各种操作系统。Microsoft正式支持CentOS作为Hyper-V的来宾OS,并且在安装时可以很好地集成。自CentOS6.4版以来,用...

安装Linux虚拟机的5个理由,以及不安装的5个原因

虚拟机(VM)允许你在不永久更改计算机的情况下探索Linux。如果你对Linux很好奇,但犹豫是否要尝试,VM提供了一个安全、灵活的解决方案。如果这是你第一次听说虚拟机,虚拟机就像“计算机中的计算机”...