每天学一点linux—-新手必须掌握的Linux命令

1、echo命令

echo命令用于在终端输出字符串或变量提取后的值,格式为“echo [字符串 | 变量]”。
例如,把指定字符串“Linuxprobe.com”输出到终端屏幕的命令为:

[root@raobenjun ~]# echo www.randzh.com
www.randzh.com

[root@raobenjun ~]# echoSHELL
/bin/bash

2、date命令

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

只需在强大的date命令中输入以“+”号开头的参数,即可按照指定格式来输出系统的时间或日期。

[root@raobenjun ~]# date
Fri Apr 13 11:14:58 CST 2018

[root@raobenjun ~]# date “+%Y-%m-%d %H:%M:%S”
2018-04-13 11:03:15

设置系统时间
date -s ‘20180910 15:02:23’ #我没有实际操作

3、reboot

reboot用于重启系统

[root@raobenjun ~]# reboot
PolicyKit daemon disconnected from the bus.
We are no longer a registered authentication agent.
Connection to www.randzh.com closed by remote host.
Connection to www.randzh.com closed.

4、poweroff命令

poweroff命令用于关闭系统,其格式为poweroff。

5、wget命令

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

[root@raobenjun ~]# wget https://www.linuxprobe.com/docs/LinuxProbe.pdf
–2018-04-13 14:26:53– https://www.linuxprobe.com/docs/LinuxProbe.pdf
Resolving www.linuxprobe.com (www.linuxprobe.com)… 220.181.105.183
Connecting to www.linuxprobe.com (www.linuxprobe.com)|220.181.105.183|:443… connected.
HTTP request sent, awaiting response… 200 OK
Length: 20077153 (19M) [application/pdf]
Saving to: ‘LinuxProbe.pdf’

100%[==================================================================================================================================================================>] 20,077,153 26.0MB/s in 0.7s

2018-04-13 14:26:54 (26.0 MB/s) – ‘LinuxProbe.pdf’ saved [20077153/20077153]

6、ps命令

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

ps命令的参数以及作用

参数 作用
-a 显示所有进程(包括其他用户的进程)
-u 用户以及其他详细信息
-x 显示没有控制终端的进程

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

R(运行):进程正在运行或在运行队列中等待。

S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该 状态。

D(不可中断):进程不响应系统异步信号,即便用kill命令也不能将其中断。

Z(僵死):进程已经终止,但进程描述符依然存在, 直到父进程调用wait4()系统函数后将进程释放。

T(停止):进程收到停止信号后停止运行。

在Linux系统中的命令参数有长短格式之分,长格式和长格式之间不能合并,长格式和短格式之间也不能合并,但短格式和短格式之间是可以合并的,合并后仅保留一个-(减号)即可。另外ps命令可允许参数不加减号(-),因此可直接写成ps aux的样子。

7、top命令

top命令用于动态地监视进程活动与系统负载等信息,其格式为top。
top命令相当强大,能够动态地查看系统运维状态,完全将它看作Linux中的“强化版的Windows任务管理器”。top的运行界面如下:

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

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

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

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

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

8、pidof命令

pidof命令用于查询某个指定服务进程的PID值,格式为“pidof [参数] [服务名称]”。
每个进程的进程号码值(PID)是唯一的,因此可以通过PID来区分不同的进程。例如,可以使用如下命令来查询本机上sshd服务程序的PID:

9、kill命令

kill命令用于终止某个指定PID的服务进程,格式为“kill [参数] [进程PID]”。
接下来,我们使用kill命令把上面用pidof命令查询到的PID所代表的进程终止掉,这种操作的效果等同于强制停止某个服务。
[root@raobenjun /]# kill 2981

10、killall命令

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

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

11、ifconfig命令

ifconfig命令用于获取网卡配置与网络状态等信息,格式为“ifconfig [网络设备] [参数]”。
使用ifconfig命令来查看本机当前的网卡配置与网络状态等信息时,其实主要查看的就是网卡名称、inet参数后面的IP地址、ether参数后面的网卡物理地址(又称为MAC地址),以及RX、TX的接收数据包与发送数据包的个数及累计流量
[root@raobenjun /]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.83.19 netmask 255.255.240.0 broadcast 172.17.95.255
ether 00:16:3e:30:e0:82 txqueuelen 1000 (Ethernet)
RX packets 34861 bytes 23706825 (22.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 18583 bytes 16085203 (15.3 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1 (Local Loopback)
RX packets 9155 bytes 571869 (558.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 9155 bytes 571869 (558.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

12、uname命令

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

在使用uname命令时,一般会固定搭配上-a参数来完整地查看当前系统的内核名称、主机名、内核发行版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息。
[root@raobenjun /]# uname -a
Linux raobenjun 3.10.0-693.2.2.el7.x86_64 #1 SMP Tue Sep 12 22:26:13 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

顺带一提,如果要查看当前系统版本的详细信息,则需要查看redhat-release文件,其命令以及相应的结果如下:
[root@raobenjun /]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

13、uptime命令

uptime用于查看系统的负载信息,格式为uptime。
uptime命令真的很棒,它可以显示当前系统时间、系统已运行时间、启用终端数量以及平均负载值等信息。平均负载值指的是系统在最近1分钟、5分钟、15分钟内的压力情况;负载值越低越好,尽量不要长期超过1,在生产环境中不要超过5。
[root@raobenjun /]# uptime
15:31:00 up 3:45, 1 user, load average: 0.00, 0.03, 0.05

14、free命令

free用于显示当前系统中内存的使用量信息,格式为“free [-h]”。
为了保证Linux系统不会因资源耗尽而突然宕机,运维人员需要时刻关注内存的使用量。在使用free命令时,可以结合使用-h参数以更人性化的方式输出当前内存的实时使用量信息。
[root@raobenjun /]# free -h
total used free shared buff/cache available
Mem: 992M 604M 221M 20M 166M 222M
Swap: 2.0G 0B 2.0G

15、who命令

who用于查看当前登入主机的用户终端信息,格式为“who [参数]”。
[root@raobenjun /]# who
root pts/0 2018-04-13 14:26 (116.231.243.59)

16、last命令

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

使用last命令可以查看本机的登录记录。但是,由于这些信息都是以日志文件的形式保存在系统中,因此黑客可以很容易地对内容进行篡改。千万不要单纯以该命令的输出信息而判断系统有无被恶意入侵!
[root@raobenjun /]# last
root pts/0 116.231.243.59 Fri Apr 13 14:26 still logged in
root pts/0 116.231.243.59 Fri Apr 13 11:56 – 13:31 (01:34)
reboot system boot 3.10.0-693.2.2.e Fri Apr 13 19:45 – 15:59 (-3:-46)
root pts/0 116.231.243.59 Fri Apr 13 09:25 – crash (10:20)
root pts/0 116.231.243.59 Thu Apr 12 18:16 – 19:12 (00:56)
root pts/0 116.231.243.59 Thu Apr 12 15:36 – 18:16 (02:40)
root pts/0 116.231.243.59 Thu Apr 12 15:06 – 15:35 (00:29)
root pts/0 116.231.243.59 Thu Apr 12 10:50 – 11:43 (00:53)
root pts/0 116.231.243.59 Tue Apr 10 11:01 – 14:07 (03:06)
root pts/1 116.231.243.59 Tue Apr 10 10:51 – 10:58 (00:06)
…….

17、history命令

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

18、pwd命令

pwd命令用于显示用户当前所处的工作目录,格式为“pwd [选项]”。

19、cat命令

cat命令用于查看纯文本文件(内容较少的),格式为“cat [选项] [文件]”。
Linux系统中有多个用于查看文本内容的命令,每个命令都有自己的特点,比如这个cat命令就是用于查看内容较少的纯文本文件的。cat这个命令也很好记,因为cat在英语中是“猫”的意思,小猫咪是不是给您一种娇小、可爱的感觉呢?

如果在查看文本内容时还想顺便显示行号的话,不妨在cat命令后面追加一个-n参数:

[root@raobenjun tomcat]# cat -n freemem.sh
1 #! /bin/sh
2 used=`free -m | awk ‘NR==2’ | awk ‘{print 3}’`
3 free=`free -m | awk ‘NR==2’ | awk ‘{print
4}’`
4 echo “===========================” >> /data/wwwlog/mem.log
5 date >> /data/wwwlog/mem.log
6 echo “Memory usage before | [Use:{used}MB][Free:{free}MB]” >> /data/wwwlog/mem.log
7 if [ free -le 200 ] ; then
8 sync && echo 1>/proc/sys/vm/drop_caches
9 sync && echo 2>/proc/sys/vm/drop_caches
10 sync && echo 3>/proc/sys/vm/drop_caches
11 used_ok=`free -m | awk ‘NR==2’ | awk ‘{print
3}’`
12 free_ok=`free -m | awk ‘NR==2’ | awk ‘{print 4}’`
13 echo “Memory usage after | [Use:
{used_ok}MB][Free:${free_ok}MB]” >> /data/wwwlog/mem.log
14 echo “OK” >> /data/wwwlog/mem.log
15 else
16 echo “Not required” >> /data/wwwlog/mem.log
17 fi
18 exit 1
19

20、more命令

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

如果需要阅读长篇小说或者非常长的配置文件,那么“小猫咪”可就真的不适合了。因为一旦使用cat命令阅读长篇的文本内容,信息就会在屏幕上快速翻滚,导致自己还没有来得及看到,内容就已经翻篇了。因此对于长篇的文本内容,推荐使用more命令来查看。more命令会在最下面使用百分比的形式来提示您已经阅读了多少内容。您还可以使用空格键或回车键向下翻页

21、head命令

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

在阅读文本内容时,谁也难以保证会按照从头到尾的顺序往下看完整个文件。如果只想查看文本中前20行的内容,该怎么办呢?head命令可以派上用场了

[root@raobenjun ~]# head -n 20 /etc/php.ini
[PHP]

;;;;;;;;;;;;;;;;;;;
; About php.ini ;
;;;;;;;;;;;;;;;;;;;
; PHP’s initialization file, generally called php.ini, is responsible for
; configuring many of the aspects of PHP’s behavior.

; PHP attempts to find and load this configuration from a number of locations.
; The following is a summary of its search order:
; 1. SAPI module specific location.
; 2. The PHPRC environment variable. (As of PHP 5.2.0)
; 3. A number of predefined registry keys on Windows (As of PHP 5.2.0)
; 4. Current working directory (except CLI)
; 5. The web server’s directory (for SAPI modules), or directory of PHP
; (otherwise in Windows)
; 6. The directory from the –with-config-file-path compile time option, or the
; Windows directory (C:\windows or C:\winnt)
; See the PHP docs for more specific information.
; http://php.net/configuration.file

22、tail命令

tail命令用于查看纯文本文档的后N行或持续刷新内容,格式为“tail [选项] [文件]”。

我们可能还会遇到另外一种情况,比如需要查看文本内容的最后20行,这时就需要用到tail命令了。tail命令的操作方法与head命令非常相似,只需要执行“tail -n 20 文件名”命令就可以达到这样的效果。tail命令最强悍的功能是可以持续刷新一个文件的内容,当想要实时查看最新日志文件时,这特别有用,此时的命令格式为“tail -f 文件名”:

[root@raobenjun ~]# tail -n 20 /etc/php.ini
yaf.environ=”product”

[mcrypt]
; For more information about mcrypt settings see http://php.net/mcrypt-module-open

; Directory where to load mcrypt algorithms
; Default: Compiled in into libmcrypt (usually /usr/local/lib/libmcrypt)
;mcrypt.algorithms_dir=

; Directory where to load mcrypt modes
; Default: Compiled in into libmcrypt (usually /usr/local/lib/libmcrypt)
;mcrypt.modes_dir=

[dba]
;dba.default_handler=

; Local Variables:
; tab-width: 4
; End:

持续刷新文件
tail -f filename
[root@raobenjun ~]# tail -f /data/wwwlog/mem.log
Memory usage after | [Use:518MB][Free:359MB]
OK
===========================
Fri Apr 13 15:30:01 CST 2018
Memory usage before | [Use:606MB][Free:220MB]
Not required
===========================
Fri Apr 13 16:30:01 CST 2018
Memory usage before | [Use:615MB][Free:201MB]
Not required

23、tr命令

tr命令用于替换文本文件中的字符,格式为“tr [原始字符] [目标字符]”。

在很多时候,我们想要快速地替换文本中的一些词汇,又或者把整个文本内容都进行替换,如果进行手工替换,难免工作量太大,尤其是需要处理大批量的内容时,进行手工替换更是不现实。这时,就可以先使用cat命令读取待处理的文本,然后通过管道符把这些文本内容传递给tr命令进行替换操作即可。例如,把某个文本内容中的英文全部替换为大写:
[root@raobenjun tomcat]# cat test | tr [a-z] [A-Z]
TEST TEST AAAA 111

24、wc命令

wc命令用于统计指定文本的行数、字数、字节数,格式为“wc [参数] 文本”。

wc的参数以及作用
参数 作用
-l 只显示行数
-w 只显示单词数
-c 只显示字节数
[root@raobenjun tomcat]# wc -l /etc/passwd
28 /etc/passwd

25、stat命令

stat命令用于查看文件的具体存储信息和时间等信息,格式为“stat 文件名称”。

stat命令可以用于查看文件的存储信息和时间等信息,命令stat test会显示出文件的三种时间状态:Access、Modify、Change。

[root@raobenjun tomcat]# stat test
File: ‘test’
Size: 19 Blocks: 8 IO Block: 4096 regular file
Device: fd01h/64769d Inode: 656952 Links: 1
Access: (0644/-rw-r–r–) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2018-04-13 17:15:38.824363590 +0800
Modify: 2018-04-13 17:12:41.145827390 +0800
Change: 2018-04-13 17:12:41.146827387 +0800
Birth: –

26、cut命令

cut命令用于按“列”提取文本字符,格式为“cut [参数] 文本”。

在Linux系统中,如何准确地提取出最想要的数据,。一般而言,按基于“行”的方式来提取数据是比较简单的,只需要设置好要搜索的关键词即可。但是如果按列搜索,不仅要使用-f参数来设置需要看的列数,还需要使用-d参数来设置间隔符号。passwd在保存用户数据信息时,用户信息的每一项值之间是采用冒号来间隔的,接下来我们使用下述命令尝试提取出passwd文件中的用户名信息,即提取以冒号(:)为间隔符号的第一列内容:

暂无评论

发送评论 编辑评论


|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇