linux指令学习之常用管理命令

2020-03-15T09:40:00

echo

命令描述:echo命令用于在终端输出字符串或变量提取后的值。
命令格式:echo [字符串 | $变量]。
命令用法示例:

  • 显示普通字符串
echo "Hello World"
  • 显示变量
    首先在shell环境中定义一个临时变量name。
export name="Tom"

使用echo命令将变量name的值显示到终端。

echo $name
  • 显示结果定向至文件
    以下命令会将文本This is a test text.输出重定向到文件test.txt中,如果文件已存在,将会覆盖文件内容,如果不存在则创建。其中>符号表示输出重定向。
echo "This is a test text." > test.txt

如果您希望将文本追加到文件内容最后,而不是覆盖它,请使用>>输出追加重定向符号。

  • 显示命令执行结果
    以下命令将会在终端显示当前的工作路径。
echo `pwd`

[scode type="yellow"]pwd命令是用一对反引号(``)包裹,而不是一对单引号('')。[/scode]
使用$(command)形式可以达到相同效果。

echo $(pwd)

date

命令描述:date命令用于显示和设置系统的时间和日期。
命令格式:date [选项] [+格式]。
其中,时间格式的部分控制字符解释如下:

字符说明
%a当地时间的星期名缩写(例如: 日,代表星期日)
%A当地时间的星期名全称 (例如:星期日)
%b当地时间的月名缩写 (例如:一,代表一月)
%B当地时间的月名全称 (例如:一月)
%c当地时间的日期和时间 (例如:2005年3月3日 星期四 23:05:25)
%C世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:20)
%d按月计的日期(例如:01)
%D按月计的日期;等于%m/%d/%y
%F完整日期格式,等价于 %Y-%m-%d
%j按年计的日期(001-366)
%p按年计的日期(001-366)
%r当地时间下的 12 小时时钟时间 (例如:11:11:04 下午)
%R24 小时时间的时和分,等价于 %H:%M
%s自UTC 时间 1970-01-01 00:00:00 以来所经过的秒数
%T时间,等于%H:%M:%S
%U一年中的第几周,以周日为每星期第一天(00-53)
%x当地时间下的日期描述 (例如:12/31/99)
%X当地时间下的时间描述 (例如:23:13:48)
%w一星期中的第几日(0-6),0 代表周一
%W一年中的第几周,以周一为每星期第一天(00-53)

命令用法示例:

  • 按照默认格式查看当前系统时间
date
  • 按照指定格式查看当前系统时间
date "+%Y-%m-%d %H:%M:%S"
  • 查看今天是当年中的第几天
date "+%j"
  • 将系统的当前时间设置为2020年03月15日8点0分0秒
date -s "20200315 08:00:00"
  • 校正系统时间,与网络时间同步

    1. 安装ntp校时工具
yum -y install ntp
2. 用ntpdate从时间服务器更新时间
ntpdate time.nist.gov

wget

命令描述:在终端中下载文件。
命令格式:wget [参数] 下载地址。
参数说明:

参数作用
-b后台下载
-P下载到指定目录
-t最大重试次数
-c断点续传
-p下载页面内所有资源,包括图片、视频等
-r递归下载

命令使用示例:
下载一首歌到路径/root/song/ -p参数默认值为当前路径,如果指定路径不存在会自动创建。

wget -P /root/song/ https://pan.ishelo.com/Music/%E6%96%B0%E7%88%B1%E6%8B%BC%E6%89%8D%E4%BC%9A%E8%B5%A2.mp3

如果wget报错,可能是你的Linux没有装,以centos7为例,可以这么安装:

yum install wget -y

ps

命令描述:ps命令用于查看系统中的进程状态。
命令格式:ps [参数]。
命令参数说明:

参数作用
-a显示现行终端机下的所有程序,包括其他用户的程序
-u以用户为主的格式来显示程序状况
-x显示没有控制终端的进程,同时显示各个命令的具体路径
-e列出程序时,显示每个程序所使用的环境变量
-f显示当前所有的进程
-t指定终端机编号,并列出属于该终端机的程序的状况

命令使用示例:

ps -ef | grep sshd

top

命令描述:top命令动态地监视进程活动与系统负载等信息。
命令使用示例:

top

命令输出参数解释:

输出视图中分为两个区域,一个统计信息区,一个进程信息区。

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

第二行信息依次为:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
第三行信息依次为:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。
第四行信息依次为:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
第五行信息依次为:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、预加载内存量。

  • 进程信息区
列名含义
PID进程ID
USER进程所有者的用户名
PR进程优先级
NInice值。负值表示高优先级,正值表示低优先级
VIRT进程使用的虚拟内存总量,单位kb
RES进程使用的、未被换出的物理内存大小,单位kb
SHR共享内存大小,单位kb
S进程状态[scode type="lblue"]D:不可中断的睡眠状态
R:正在运行
S:睡眠
T:停止-
Z:僵尸进程[/scode]
%CPU上次更新到现在的CPU时间占用百分比
%MEM进程使用的物理内存百分比
TIME+进程使用的CPU时间总计,单位1/100秒
COMMAND命令名

[scode type="yellow"]按 q 键退出监控页面。[/scode]

pidof

命令描述:pidof命令用于查询指定服务进程的PID值。
命令格式:pidof [服务名称]。
命令参数说明:

参数说明
-s仅返回一个进程号
-c只显示运行在root目录下的进程,这个选项只对root用户有效
-o忽略指定进程号的进程
-x显示由脚本开启的进程

命令使用示例:

#查询出crond服务下的所有进程ID。
pidof crond

kill

命令描述:kill命令用于终止指定PID的服务进程。
kill可将指定的信息送至程序。预设的信息为SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用SIGKILL(9)信息尝试强制删除程序。
命令格式:kill [参数] [进程PID]。
命令使用示例:

#删除pid为1566的进程。
kill -9 1566

killall

命令描述:killall命令用于终止指定名称的服务对应的全部进程。
命令格式:killall [进程名称]。
命令使用示例:

#删除crond服务下的所有进程。
killall crond

reboot

命令描述:reboot命令用来重启系统。
命令格式:reboot [-n] [-w] [-d] [-f] [-i]。
命令参数说明:

参数说明
-n保存数据后再重新启动系统。
-w仅做测试,并不是真的将系统重新开机,只会把重新开机的数据写入记录文件/var/log/wtmp。
-d重新启动时不把数据写入记录文件/var/tmp/wtmp。
-f强制重新开机,不调用shutdown指令的功能。
-i关闭网络设置之后再重新启动系统。

命令使用示例:

reboot

poweroff

命令描述:poweroff命令用来关闭系统。
命令使用示例:

poweroff

ifconfig

命令描述:ifconfig命令用于获取网卡配置与网络状态等信息。
命令使用示例:

ifconfig

命令输出说明:

  1. 第一部分的第一行显示网卡状态信息。

    • eth0表示第一块网卡。
    • UP代表网卡开启状态。
    • RUNNING代表网卡的网线被接上。
    • MULTICAST表示支持组播。
  2. 第二行显示网卡的网络信息。

    • inet(IP地址):172.16.132.195。
    • broadcast(广播地址):172.16.143.255。
    • netmask(掩码地址):255.255.240.0。
  3. RX表示接收数据包的情况,TX表示发送数据包的情况。
  4. lo表示主机的回环网卡,是一种特殊的网络接口,不与任何实际设备连接,而是完全由软件实现。与回环地址(127.0.0.0/8 或 ::1/128)不同,回环网卡对系统显示为一块硬件。任何发送到该网卡上的数据都将立刻被同一网卡接收到。

uname

命令描述:uname命令用于查看系统内核与系统版本等信息。
命令语法:uname [选项] or [--help] or [--version]
命令参数说明:

参数说明
-a以如下次序输出所有信息。其中若-p 和-i 的探测结果不可知则被省略:
-s输出内核名称
-n输出网络节点上的主机名
-r输出内核发行号
-v输出内核版本
-m输出主机的硬件架构名称
-p输出处理器类型或"unknown"
-i输出硬件平台或"unknown"
-o输出操作系统名称

命令使用示例:

#显示系统信息
uname -a

uptime

命令描述:uptime 用于查看系统的负载信息。
命令使用示例:

uptime

命令输出说明:

  • 当前服务器时间
  • 当前服务器运行时长
  • 当前用户数
  • 当前负载情况(1min,5min,15min的均值)

free

命令描述:free用于显示当前系统中内存的使用量信息。
命令语法:free -bkmotV。
命令参数说明:

参数说明
-b以Byte为单位显示内存使用情况
-k以KB为单位显示内存使用情况
-m以MB为单位显示内存使用情况
-h以合适的单位显示内存使用情况,最大为三位数,自动计算对应的单位值。

命令使用示例:

free -h

命令输出说明:

参数说明
total物理内存总数
used已经使用的内存数
free空间的内存数
share多个进程共享的内存总额
buff/cache应用使用内存数
available可用的内存数
Swap虚拟内存

who

命令描述:who 命令显示关于当前在本地系统上的所有用户的信息。
命令使用示例:

#显示当前登录系统的用户
who
#显示用户登录来源
who -l -H
#只显示当前用户
who -m -H
#精简模式显示
who -q

last

命令描述: last 命令用于显示用户最近登录信息。
命令使用示例:

last

[scode type="yellow"]由于这些信息都是以日志文件的形式保存在系统中,黑客可以很容易地对内容进行篡改,所以该命令输出的信息并不能作为服务器是否被入侵的依据。[/scode]

history

命令描述:history命令用于显示历史执行过的命令。
[scode type="lblue"]bash默认记录1000条执行过的历史命令,被记录在~/.bash_history文件中。[/scode]
命令使用示例:

#显示最新10条执行过的命令。
history 10
#清除历史记录。
history -c
当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »