中国领先的IT技术网站
|
|

1000+人推荐的30个实用的Linux命令

这是类似Linux/Unix的操作系统下一系列使用方便、又很实用的日常基本命令。

作者:鸡汤妹来源:马哥Linux运维|2017-07-24 12:31

开发者大赛路演 | 12月16日,技术创新,北京不见不散


1000+人推荐的30个实用的Linux命令

1.uptime命令

在Linux中,uptime命令显示了你的系统运行了多久以及目前登录的用户有多少,另外还显示了间隔1分钟、5分钟和15分钟的负载平均值。

# uptime

08:16:26 up 22min, 1 user,loadaverage: 0.00, 0.03, 0.22

检查uptime版本

除了uptime(正常运行时间)和version(版本)外,uptime命令没有其他选项。如果时间不到1天,它只给出hours:mins这种形式的信息。

[tecmint@tecmint ~]$ uptime -V

procps version 3.2.8

2.w命令

该命令会显示目前登录的用户及其进程,另外还会显示负载平均值。此外,它还显示了登录名称、tty名称、远程主机、登录时间、闲置时间、JCPU、PCPU、命令和进程。

# w

08:27:44 up 34min, 1 user,loadaverage: 0.00, 0.00, 0.08

USER TTYFROMLOGIN@ IDLE JCPU PCPU WHAT

tecmint pts/0 192.168.50.1 07:59 0.00s 0.29s 0.09s w

可用的选项

◆-h:不显示标题。

◆-s:不显示JCPU和PCPU。

◆-f:不显示字段信息。

◆-V:(大写V)-显示版本。

3.users命令

users命令显示了目前已登录的用户。除了help(帮助)和version(版本)外,该命令没有其他参数。

# users

Tecmint

4.who命令

who命令仅仅返回用户名称、日期、时间和主机信息。who命令类似w命令。不像w命令,who并不输出用户执行的操作这一信息。不妨具体看看who和w这两个命令之间的区别。

# who

tecmint pts/0 2012-09-18 07:59 (192.168.50.1)

# w

08:43:58 up 50min, 1 user,loadaverage: 0.64, 0.18, 0.06

USER TTYFROMLOGIN@ IDLE JCPU PCPU WHAT

tecmint pts/0 192.168.50.1 07:59 0.00s 0.43s 0.10s w

who命令的选项

◆-b:显示上一次系统重启日期和时间。

◆-r:显示当前的运行级别。

◆-a,–all:显示累积的所有信息。

5.whoami命令

whoami命令输出当前用户的姓名。你还可以使用“who am i”命令显示当前用户。如果你以根用户身份使用sudo命令登录,“whoami”命令返回根用户是当前用户。如果你想知道登录的用户具体是哪个,使用“who am i”命令。

# whoami

tecmint

6.ls命令

ls命令显示了人类可读格式的文件列表。

# ls -l

total 114

dr-xr-xr-x. 2 root root 4096 Sep 18 08:46 bin

dr-xr-xr-x. 5 root root 1024 Sep 8 15:49 boot

按照上一次修改时间排序文件。

# ls -ltr

total 40

-rw-r–r–. 1 root root 6546 Sep 17 18:42 install.log.syslog

-rw-r–r–. 1 root root 22435 Sep 17 18:45 install.log

-rw——-. 1 root root 1003 Sep 17 18:45 anaconda-ks.cfg

7.crontab命令

可使用crontab命令和-l选项,列出当前用户的计划任务。

# crontab -l

00 10 * * * /bin/ls >/ls.txt

可以使用-e选项编辑crontab。在下面例子中,将用VI编辑工具打开计划任务。进行必要的更改,按:wq键退出,这会自动保存设置。

# crontab -e

8.less命令

less命令允许快速查看文件。你可以向上和向下翻页。按“q”即可退出less窗口。

# less install.log

Installing setup-2.8.14-10.el6.noarch

warning: setup-2.8.14-10.el6.noarch: Header V3 RSA/SHA256 Signature,keyID c105b9de: NOKEY

Installing filesystem-2.4.30-2.1.el6.i686

Installing ca-certificates-2010.63-3.el6.noarch

Installing xml-common-0.6.3-32.el6.noarch

Installing tzdata-2010l-1.el6.noarch

Installing iso-codes-3.16-2.el6.noarch

9.more命令

more命令允许快速查看文件,并以百分比的形式显示详细信息。你可以向上和向下翻页。按“q”即可退出more窗口。

# more install.log

Installing setup-2.8.14-10.el6.noarch

warning: setup-2.8.14-10.el6.noarch: Header V3 RSA/SHA256 Signature,keyID c105b9de: NOKEY

Installing filesystem-2.4.30-2.1.el6.i686

Installing ca-certificates-2010.63-3.el6.noarch

Installing xml-common-0.6.3-32.el6.noarch

Installing tzdata-2010l-1.el6.noarch

Installing iso-codes-3.16-2.el6.noarch

–More–(10%)

10.cp命令

将文件从来源拷贝到目的地,保留同一种模式。

# cp -p fileA fileB

覆盖文件之前系统会提示你。

# cp -i fileA fileB

11.mv命令

将fileA更名为fileB。 -i选项会在覆盖前提示。如果文件已经存在,会要求予以确认。

# mv -i fileA fileB

12.cat命令

cat命令用来同时查看多个文件。

# cat fileA fileB

要是某个文件在一个屏幕/页面显示不了,你可以使用cat命令来合并more和less命令,查看文件内容。

# cat install.log | less

# cat install.log | more

13.cd命令(更改目录)

借助cd命令(更改目录),它会进入到fileA目录。

# cd /fileA

14.pwd命令(输出工作目录)

pwd命令会返回当前的工作目录。

# pwd

/root

15.sort命令

以升序排序一行行文本文件。如果使用-r选项,就会以降序排序。

#sort fileA.txt

#sort -r fileA.txt

16.vi命令

对大多数类似UNIX的操作系统而言,vi是最流行的文本编辑器。下面例子使用-R选项,打开只读方式的文件。按“:q”即可退出vi窗口。

# vi -R /etc/shadows

17.ssh命令(安全外壳)

ssh命令用来登录入到远程主机。比如说,下面这个ssh例子会使用用户作为narad,连接到主机(192.168.50.2)。

# ssh narad@192.168.50.2

想检查ssh的版本,使用选项-V(大写),即可显示ssh的版本。

# ssh -V

OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010

18.ftp或sftp命令

ftp或sftp命令用来连接到远程ftp主机。ftp是指文件传输协议,而sftp是安全文件传输协议。比如说,下列命令将连接到ftp主机(192.168.50.2)。

# ftp 192.168.50.2

# sftp 192.168.50.2

正如可以使用mput将多个文件上传到到远程主机,我们同样可以使用mget从远程主机下载多个文件。

# ftp > mput *.txt

# ftp > mget *.txt

19.service命令

service命令调用位于/etc/init.d/目录处的脚本,并执行脚本。有两种方法可以启动任何服务。比如说,我们使用service命令,启动名为httpd的服务。

# service httpd start

OR

# /etc/init.d/httpd start

20.free命令

free命令显示了闲置内存、总内存和交换内等方面的信息,单位是字节。

#free

total usedfreeshared buffers cached

Mem: 1030800 735944 294856 0 51648 547696

-/+ buffers/cache: 136600 894200

Swap: 2064376 0 2064376

使用-t选项的free命令显示了已使用的总内存和可以使用的内存,单位是字节。

#free-t

total usedfreeshared buffers cached

Mem: 1030800 736096 294704 0 51720 547704

-/+ buffers/cache: 136672 894128

Swap: 2064376 0 2064376

Total: 3095176 736096 2359080

21.top命令

top命令显示了系统的处理器活动,还显示了由内核实时管理的任务。它会显示所使用的处理器和内存。如果使用带“u”选项的top命令,这会显示特定的用户进程详细信息,如下所示。按“O”(大写)即可按你希望的方式来排序。按“q”即可退出top屏幕。

#top-u tecmint

top– 11:13:11 up 3:19, 2 users,loadaverage: 0.00, 0.00, 0.00

Tasks: 116 total, 1 running, 115 sleeping, 0 stopped, 0 zombie

Cpu(s): 0.0%us, 0.3%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

Mem: 1030800k total, 736188k used, 294612kfree, 51760k buffers

Swap: 2064376k total, 0k used, 2064376kfree, 547704k cached

PID USER PR NI VIRT RES SHR S %CPU %MEMTIME+ COMMAND

1889 tecmint 20 0 11468 1648 920 S 0.0 0.2 0:00.59 sshd

1890 tecmint 20 0 5124 1668 1416 S 0.0 0.2 0:00.44 bash

6698 tecmint 20 0 11600 1668 924 S 0.0 0.2 0:01.19 sshd

6699 tecmint 20 0 5124 1596 1352 S 0.0 0.2 0:00.11 bash

22.tar命令

tar命令用于压缩Linux下的文件和文件夹。比如说,下面这个命令将为/home目录创建一个压缩存档,文件名为archive-name.tar。

# tar -cvf archive-name.tar /home

想解压缩tar压缩存档文件,请使用如下所示的选项。

# tar -xvf archive-name.tar

23.grep命令

grep可搜索文件中的特定字符串。只显示/etc/passwd文件中的tecmint用户。我们可以使用-i选项,忽略大小写。

# grep tecmint /etc/passwd

tecmint:x:500:500::/home/tecmint:/bin/bash

24.find命令

find命令用来搜索文件、字符串和目录。在下面这个例子中,find命令搜索“/”分区中的tecmint单词,并返回输出。

# find / –nametecmint

/var/spool/mail/tecmint

/home/tecmint

/root/home/tecmint

25.lsof命令

lsof意味着“列出所有打开的文件”。下面,lsof命令列出了tecmint用户打开的所有文件。

# lsof -u tecmint

COMMAND PID USER FD TYPE DEVICESIZE/OFFNODENAME

sshd 1889 tecmint cwd DIR 253,0 4096 2 /

sshd 1889 tecmint txt REG 253,0 532336 298069 /usr/sbin/sshd

sshd 1889 tecmint DEL REG 253,0 412940 /lib/libcom_err.so.2.1

sshd 1889 tecmint DEL REG 253,0 393156 /lib/ld-2.12.so

sshd 1889 tecmint DEL REG 253,0 298643 /usr/lib/libcrypto.so.1.0.0

sshd 1889 tecmint DEL REG 253,0 393173 /lib/libnsl-2.12.so

sshd 1889 tecmint DEL REG 253,0 412937 /lib/libkrb5support.so.0.1

sshd 1889 tecmint DEL REG 253,0 412961 /lib/libplc4.so

26.last命令

借助last命令,我们就能观察用户在系统中的活动。该命令还可以以正常用户的身份来执行。它会显示完整的用户信息,比如终端、时间、日期、系统重启或启动以及内核版本。这是用来排查故障的实用命令。

#last

tecmint pts/1 192.168.50.1 Tue Sep 18 08:50 still logged in

tecmint pts/0 192.168.50.1 Tue Sep 18 07:59 still logged in

reboot system boot 2.6.32-279.el6.i Tue Sep 18 07:54 – 11:38 (03:43)

root pts/1 192.168.50.1 Sun Sep 16 10:40 – down (03:53)

root pts/0 :0.0 Sun Sep 16 10:36 – 13:09 (02:32)

root tty1 :0 Sun Sep 16 10:07 – down (04:26)

reboot system boot 2.6.32-279.el6.i Sun Sep 16 09:57 – 14:33 (04:35)

narad pts/2 192.168.50.1 Thu Sep 13 08:07 – down (01:15)

你可以使用带用户名的last,了解特定用户的活动,如下所示。

#lasttecmint

tecmint pts/1 192.168.50.1 Tue Sep 18 08:50 still logged in

tecmint pts/0 192.168.50.1 Tue Sep 18 07:59 still logged in

tecmint pts/1 192.168.50.1 Thu Sep 13 08:07 – down (01:15)

tecmint pts/4 192.168.50.1 Wed Sep 12 10:12 – 12:29 (02:17)

27.ps命令

ps命令显示了系统中运行的进程方面的信息。下面这个例子只显示init进程。

# ps -ef | grep init

root 1 0 0 07:53 ? 00:00:04 /sbin/init

root 7508 6825 0 11:48 pts/1 00:00:00 grep init

28.kill命令

使用kill命令来终结进程。先使用ps命令找到进程id,如下所示,然后使用kill -9命令,终止进程。

# ps -ef | grep init

root 1 0 0 07:53 ? 00:00:04 /sbin/init

root 7508 6825 0 11:48 pts/1 00:00:00 grep init

# kill- 9 7508

29.rm命令

rm命令用来清除或删除文件,并不提示予以确认。

# rm filename

使用-i选项即可在删除之前予以确认。使用“-r”和“-f”这两个选项将强行删除文件,并不予以确认。

# rm -i test.txt

rm: remove regular file `test.txt’?

30.mkdir命令

mkdir命令用来在Linux下创建目录。

# mkdir directoryname

这是类似Linux/Unix的操作系统下一系列使用方便、又很实用的日常基本命令。要是我们遗漏了哪些命令,欢迎留言交流!

【编辑推荐】

  1. 你的Linux服务器被黑了?看一看是不是犯了这5点错
  2. Linux Device Tree(二):基本概念
  3. 出了Linux故障找不到方法?看大牛简单、朴实的解决思路
  4. 如何在Linux中恢复仍在活动进程中的已删除文件
  5. Nylas Mail: 一个Linux的免费邮件客户端
【责任编辑:枯木 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Java程序设计专家门诊

精选目前国内外最流行的程序设计语言——Java作为本书的选题,并以丰富的内容来解决读者学习该语言时可能遇到的各种问题。以专业的论坛为基...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
× 51CTO学院双十二活动