linux常用命令

qian-lei ... 2022-01-13 Linux
  • Linux
  • 命令
大约 31 分钟 约 9348 字

# 1、Linux 管理文件和目录的命令

命令 功能 命令 功能
pwd 显示当前目录 ls 查看目录下的内容
cd 改变所在目录 cat 显示文件的内容
grep 在文件中查找某字符 cp 复制文件
touch 创建文件 mv 移动文件
rm 删除文件 rmdir 删除目录

# 1.1 pwd 命令

该命令的英文解释为 print working directory(打印工作目录)。输入 pwd 命令,Linux 会输出当前目录。

# 1.2 cd 命令

cd 命令用来改变所在目录。
cd / 转到根目录中
cd ~ 转到/home/user 用户目录下
cd /usr 转到根目录下的 usr 目录中-------------绝对路径
cd test 转到当前目录下的 test 子目录中-------相对路径

# 1.3 ls 命令

ls 命令用来查看目录的内容。
选项 含义
-a 列举目录中的全部文件,包括隐藏文件
-l 列举目录中细节,包括权限、所有者、组群、大小、创建日期、文件是否是链接等
-f 列举的文件显示文件类型
-r 逆向,从后向前地列举目录中内容
-R 递归,该选项递归地列举当前目录下所有子目录内的内容
-s 大小,按文件大小排序
-lh 以人类可读的方式显示文件的大小,如用 K、M、G 作单位
-l examples.doc 列举文件 examples.doc 的所有信息

# 1.4 cat 命令

cat 命令可以用来合并文件,也可以用来在屏幕上显示整个文件的内容。
cat snow.txt 该命令显示文件 snow.txt 的内容,ctrl+D 退出 cat。

# 1.5 grep 命令

grep 命令的最大功能是在一堆文件中查找一个特定的字符串。
grep money test.txt 以上命令在 test.txt 中查找 money 这个字符串,grep 查找是区分大小写的。

# 1.6 touch 命令

touch 命令用来创建新文件,他可以创建一个空白的文件,可以在其中添加文本和数据。
touch newfile 该命令创建一个名为 newfile 的空白文件。

# 1.7 cp 命令

cp 命令用来拷贝文件,要复制文件,输入命令:

cp <source filename> <target filename>
1

cp t.txt Document/t 该命令将把文件 t.txt 复制到 Document 目录下,并命名为 t。
选项 含义
-i 互动:如果文件将覆盖目标中的文件,他会提示确认
-r 递归:这个选项会复制整个目录树、子目录以及其他
-v 详细:显示文件的复制进度

# 1.8 mv 命令

mv 命令用来移动文件。
选项 说明
-i 互动:如果选择的文件会覆盖目标中的文件,他会提示确认
-f 强制:它会超越互动模式,不提示地移动文件,属于很危险的选项
-v 详细:显示文件的移动进度
mv t.txt Document 把文件 t.txt 移动到目录 Document 中。

# 1.9 rm 命令

rm 命令用来删除文件。
选项 说明
-i 互动:提示确认删除
-f 强制:代替互动模式,不提示确认删除
-v 详细:显示文件的删除进度
-r 递归:将删除某个目录以及其中所有的文件和子目录
rm t.txt 该命令删除文件 t.txt

# 1.10 rmdir 命令

rmdir 命令用来删除目录。

# 2、有关磁盘空间的命令

命令 功能
mount 挂载文件系统
umount 卸载已挂载上的文件系统
df 检查各个硬盘分区和已挂上来的文件系统的磁盘空间
du 显示文件目录和大小
fsck 主要是检查和修复 Linux 文件系统

# 2.1 mount 命令

mount 命令的功能是挂载文件系统,可以挂载硬盘、光盘、软盘,也可以挂载 NFS 网络文件系统。这个命令的标准用法如下:mount –t 设备类型 存放目录
mount IP 地址:/所提供的目录 存放目录
选项 说明
(无) 不加任何参数,直接输入命令可以显示已挂载的文件系统和目录
-a 挂上/etc/fstab 下的全部文件系统
-t 制定所挂上来的文件系统的名称,所有系统支持的文件系统,这个信息可以在
/proc/filesystems 这个文件里看到
-n 挂上文件系统,但是不把文件系统的数据写入/etc/mtlab 这个文件
-w 将文件系统设为可读写
-r 挂上来的文件系统设为只读
在目录/mnt 下,挂上 iso9660 文件系统。输入命令:
mount –t iso9660 /dev/hdb /cdrom

# 2.2 umount 命令

umount 命令的功能是卸载已挂上的文件系统,在关闭系统前应该把所有挂载上的文件系统卸载。这个命令和 mount命令是相对的。用法:
umount 已挂上的目录或设备
卸载已挂上的/cdrom 目录,输入命令:umount /cdrom
卸载已挂上的某个分区,输入命令:umount /dev/hdb1

# 2.3 df 命令

df 命令用来检查硬盘分区和已挂在的文件系统的磁盘空间,也就是说,检查硬盘的使用量。标准用法如下:
df [-选项]
选项 功能
-a 把全部的文件系统和各分区的硬盘使用情形列出来,包括 0 区块的,例如/proc 这个文件系统
-i 列出 I-nodes 的使用量
-h 以人类可读的方式显示文件的大小,如用 K、M、G 作单位
-t 列出某一文件系统的所有分区磁盘空间使用量
-x 列出不是某一文件系统的所有分区磁盘空间使用量,和-t 选项相反
-T 列出每个分区所属文件系统的名称
例如,要列出全部文件系统和各分区的磁盘使用情况,输入命令:
df –a

# 2.4 du 命令

du 命令的功能是用于显示文件目录或大小。标准用法:
du [-选项]
选项 含义
-a 显示全部目录及其次目录下的每个文件所占的磁盘空间
-b 显示目录和文件的大小,以 B 为单位
-c 最后再加上一个总计
-h 以 KB、MB、GB 为单位,提高信息可读性
-s 只列出各文件大小的总和
-x 只计算属于同一文件系统的文件
例如,查看www文件夹占用磁盘大小,输入命令:
du -sh www/

# 2.5 fsck 命令

fsck 命令的功能是检查和修复 Linux 文件系统,这个命令最好在没有人或是没有分区挂上来时使用,其实每次开机系统都会做一次检查,看是否有坏轨或数据流失的现象。用法:
fsck (-选项) 分区名称
选项 功能
-a 自动修复文件系统,不询问任何问题,比较危险
-A 依照/etc/fstab 配置文件的内容,检查该文件内所列全部文件系统。若没有附加参数"-P”,
则会先检查/目录的文件系统,而不会同时检查所有文件系统
-R 采取互动方式,在修复时询问问题,让用户确认并决定处理方式
-S 依次检查作业而不是同时执行。当依次指定多个文件系统且采用互动的方式进行检查时,
请使用此参数以便顺序执行,否则 fsck 可能会同时询问数个问题,让人不知所措
-V 显示命令执行的过程
-T 指定要检查的文件系统的类型
-N 不是真正执行指令,仅列出实际执行时会进行的动作

# 3、文件备份和压缩命令

在 Linux 中,常用的文件压缩工具有 gzip、bzip2、zip。bzip2 是最理想的压缩工具,它提供了最大限度的压缩。zip 兼 容性好,Windows 也支持。

命令 功能
bzip2/bunzip2 扩展名为 bz2 的压缩/解压缩工具
gzip/gunzip 扩展名为 gz 的压缩/解压缩工具
zip/unzip 扩展名为 zip 的压缩/解压缩工具
tar 创建备份和归档

# 3.1 bzip2 命令

要使用 bzip2 来压缩文件,在 shell 提示下输入命令:bzip2 filename文件即会被压缩,并被保存为 filename.bz2。
要解压缩文件,输入命令:
bunzip2 filename.bz2
filename.bz2 会被删除,而以 filename 代替。
bzip2 filename.bz2 file1 file2 file3 /usr/work/school
上面的命令把 file1、file2、file3 以及/usr/work/school 目录中的内容压缩起来放入 filename.bz2。

# 3.2 gzip 命令

要使用 gzip 来压缩文件,输入命令:gzip filename文件即会被压缩,并被保存为 filename.gz。
要解压缩文件,输入命令:gunzip filename.gz
filename.gz 会被删除,而以 filename 代替。
gzip -r filename.gz file1 file2 file3 /usr/work/school
上面的命令把 file1、file2、file3 以及/usr/work/school 目录中的内容压缩起来放入 filename.gz。

# 3.3 zip 命令

zip 命令的使用方法同 gzip。

# 3.4 tar 命令

tar 命令最早是用来做磁带备份的,但是由于硬盘容量越来越大,因此现在主要用这个命令来备份所有的文件。tar这个命令把大量的文件和目录打包成一个文件。
选项 功能
-c 创建一个新归档
-f 当与-c 选项一起使用时,创建的 tar 文件使用该选项指定的文件名;当与-x 选
项一起使用时,则解除该选项指定的归档
-t 显示包括在 tar 文件中的文件列表
-v 显示文件的归档进度
-x 从归档中抽取文件
-z 使用 gzip 压缩 tar 文件
-j 使用 bzip2 压缩 tar 文件
要创建一个 tar 文件,输入命令:tar –cvf filename.tar directory/file /home/mine
上面的命令将 directory/file、/home/mine 放入归档文件中。
要列出 tar 文件的内容,输入命令:tar –tvf filename.tar
要抽取 tar 文件的命令,输入命令:tar –xvf filename.tar
这个命令不会删除 tar 文件,但会把解除归档的内容复制到当前工作目录下,并保留归档文件所使用的任何目录结构。
请记住,tar 默认不压缩文件。要创建一个使用 tar 和 bzip2 来归档压缩的文件,使用-j 选项:
tar –cjvf filename.tbz file
如果使用 bunzip2 命令解压 filename.tbz 文件,则 filename.tbz 会被删除,以 filename.tar 代替。
要扩展并解除归档 bzip tar 文件,输入命令:tar –xjvf filename.tbz
要创建一个用 tar 和 gzip 归档并压缩的文件,使用-z 选项:tar –czvf filename.tgz file
如果使用 gunzip 命令解压 filename.tgz 文件,则 filename.tgz 会被删除,以 filename.tar 代替。

# 4、有关关机和查看系统信息的命令

命令 功能
shutdown 正常关机
reboot 重启计算机
ps 查看目前程序执行的情况
top 查看目前程序执行的情景和内存使用的情况
kill 终止一个进程
date 更改或查看目前日期
cal 显示月历及年历

# 4.1 shutdown 命令

要使用这个命令必须保证是根用户,否则使用 su 命令改变为根用户。命令格式如下:
shutdown –(选项)
选项 功能
-k 不是真正的关机,只是发出警告命令
-r 关机后重启
-t 在规定的时间内关机
加入要在 2min 内关机,输入命令:shutdown –t 2
如果是关机后重启,输入命令:shutdown –r

# 4.2 reboot 命令

这个命令也是一个关机命令,只有输入,不加任何参数,系统会以最快的速度关机,且不将内存或缓冲区里的东西写回硬盘。
选项 功能
-d 不把记录写到/var/log/wtmp 档案里(-n 这个参数包含了-d)
-f 强迫重开机,不呼叫 shutdown 这个指令
-n 在重开机前不做将记忆体资料写回硬盘
-w 并不会真的重开机,只是把记录写到/var/log/wtmp 档案里

# 4.3 ps 命令

ps 命令用来查看在计算机系统中有哪些程序正在执行,及其执行的情况。这是一个相当强大的命令,可以用它来找出所有的 process id 和名称。另外,ps 命令也可以用来列出所有程序占用内存的情况。用法如下:
ps –(选项)
选项 功能
-l 用长格式列出
-u 列出使用者的名称和使用时间
-m 列出内存分布的情况
-r 只列出正在执行的前台程序,不列出其他信息
-x 列出所有程序,包括那些没有终端机的程序

# 4.4 top 命令

top 命令可以查看目前程序的执行情景和内存使用。它和 ps 类似,不过,它会几秒钟更新一次系统状态,方便追踪。
要离开这个程序,按 Ctrl+C 键就可以了。

# 4.5 kill 命令

kill 命令用来终止一个正在执行中的进程。如果一个程序执行过程中失败了,可以把这个程序终止,避免留在内存中占用系统资源。不过,它的实际意义是送一个信号给这个正在执行的程序,叫它自杀。可以送很多信号给这些程序,也可以让他们受到信号后做很多事情。标准用法:
kill –(选项) pid
在执行 kill 命令前。可以先用 ps 命令查一下某宕掉程序的 pid,然后使用 kill 除去某个程序。例如,终止 pid 为 90
的程序:kill 90
选项 功能
-l 列出所有可用的信号名称
-p 印出 pid 并不发送信号
-signal 其中可用的讯号有 HUP (1), KILL (9), TERM (15), 分别代表著重跑, 砍掉, 结 束 将 pid 为 323 的行程砍掉 (kill) :kill -9 323
将 pid 为 456 的行程重跑 (restart) :kill -HUP 456

# 4.6 date 命令

date 命令用来显示、设定和修改现在的时间和日期。标准用法:
date –(选项) 显示时间格式(以+号开头,后加格式)
date 设定时间格式
选项 功能
-u 使用格林尼治时间
-r 最后一次修改文件的时间
-s 设置时间
常用的几种时间格式如下表所示:
格式 说明
%a 星期几的简称,例如一、二、三
%A 星期几的全名,例如星期一、星期二
%D 日期(mm/dd/yy 格式)
%T 显示时间格式,24 小时制(hh:mm:ss)
%x 显示日期的格式(mm/dd/yy)
%y 年的最后两个数字
%Y 年(如 2007、2008)
%r 时间(hh:mm:ss 上午或下午)
%p 显示上午或下午
如果输入命令:date “+%x,%r”
系统返回如下信息:2010 年 3 月 26 日,下午 18 时 06 分 49 秒

# 4.7 cal 命令

cal 命令有两种功能:显示月历以及年历。
直接输入 cal 命令则系统会显示目前月份的月历。
若要显示一整年的年历,可以在 cal 命令后加 4 位数的公元年份。例如要显示 2008 年的年历,必须输入:
cal 2008
若输入 cal 08 ,则最显示公元 8 年的年历。
若只需要查看某一年份中某一月份的月历,可以输入:cal 月份 公元年份。例如输入:"cal 12 2004”。

# 5、管理使用者和设立权限的命令

命令 功能
chmod 用来改变权限
su 用来修改用户
useradd 用来增加用户

# 5.1 chmod 命令

chmod 命令用来改变许可权限。读取、写入和执行是许可权限中的三个主要设置。因为用户在他们的账号被创建时就被编入一个组群,所以还可以指定那些组群可以读取、写入或执行某一文件。其中:
r—文件可以被读取
w—文件可以被写入
x—文件可以被执行,如果文件是程序的话
可以使用带有-l 的 ls 命令来仔细查看一个文件的许多细节。
chmod 命令用来设定文件的权限。标准用法:
chmod 文件的使用者(u,g,o,a)增减(+,-,=)权限名称(r,w,x) 文件
文件的使用者
说明 权限 说明 增减 说明
u 拥有文件的用户 r 读取权 + 添加权限
g 所有者所在的组群 w 写入权 - 删除权限
o 其他人 x 执行权 = 是它称为唯一权限
a 全部(u,g 和 o)
删除某一文件的所有权限,输入命令:chmod a-rwx test.txt
为文件所有者添加权限,输入命令:chmod u+rwx test
还可以用数字表示权限:4——读取,2——写入,1——执行。下面的两个命令等价:
chmod 751 filename
chmod u+rwx,g=rx,0=x filename

# 5.2 su 命令

su 命令用来修改用户。这个命令非常重要,它可以让一个普通的使用者拥有超级用户或其他使用者的权限。不过,这个命令必须具有超级用户或其他使用者的口令才能成为超级用户或其他使用者。如果要离开,可以输入 exit。标准用法:
su 用户名 (如果没有输入用户名则预设为 root)
举例说明,假设当前用户 user01,想要转变为 user02,则输入命令:su user02
系统返回:password:
此时,输入 user02 的指令,就会变为 user02。

# 5.3 useradd 命令

useradd 命令用来增加用户,只有根用户才能增加用户。如果没有登录为根用户,输入 su,再输入根口令即可。
要增加用户,输入命令:
useradd 用户名
然后,根据提示为新用户输入一个口令即可。

# 6、线上查询的命令

命令 功能
man 查询和解释一个命令的使用方法,以及这个命令的说明事项
locate 定位文件和目录
whatis 寻找某个命令的含义

# 6.1 man 命令

man 命令用来查询和解释一个命令的使用方法和这个命令的注意事项。这个查询查询在每个 Linux 上都有。通常,使用者只要输入命令 man 和这个命令的名称 shell 就会列出一份完整的说明。标准用法:
man 命令的名称
要查询 ls 命令的说明书页,输入命令:man ls
要翻阅说明书页,可以使用 Page Up 和 Page Down 键,或使用空格键向后翻一页,使用 b 向前翻。要退出说明书页,输入命令 q。要在说明书页中搜索关键字,输入命令/和要搜索的关键字或短语,然后按 Enter 键即可。所有出现在说明书页中的关键字都会被突出显示,允许快速地阅读上下文中的关键字。

# 6.2 locate 命令

locate 命令的主要功能是定位文件和目录。有时候,只知道某一文件或目录存在,却不知道在哪儿,就可以用 locate来定位文件和目录。使用 locate 命令,将会看到每一个包括搜索田间的文件和目录。
例如,如果想要搜索带有 test的这个词的文件,输入命令:locate test locate 命令使用数据库来定位带有 test 这个词的文件或目录。

# 6.3 whatis 命令

whatis 命令用来查询某个命令的含义。用法简单,也不需要什么参数,直接在 whatis 命令后加上所要查询的命令就 可以了,但是却很实用。
要查询 mv 命令的含义,输入命令:whatis mv

# 7、文件阅读的命令

命令 功能
head 查看文件的开头部分
tail 查看文件结尾的 10 行
less 是一个分页工具,它允许一页一页地(或一个屏幕一个屏幕地)查看信息
more 是一个分页工具,它允许一页一页地(或一个屏幕一个屏幕地)查看信息

# 7.1 head 命令

head 命令可以用来查看文件的开头部分。此命令的格式是:
head 文件名
默认设置,它只查看文件的前 10 行。但可以通过指定一个数字选项来改变要显示的行数,命令如下:
head –20 文件名
这个命令将会查看文件的前 20 行。

# 7.2 tail 命令

tail 命令和 head 命令恰恰相反。使用 tail 命令,可以查看文件结尾的 10 行。这有助于查看日志文件的最后 10 行来阅读重要的系统信息。还可以使用 tail 观察日志文件更新的过程。使用-f 选项,tail 会自动实时地把打开文件中的新信息显示到屏幕上。例如,要活跃地观察/var/log/messages,以根用户身份在 shell 下输入以下命令:
tail –f /var/log/messages

# 7.3 less 命令

less 命令与 more 命令相似。

# 7.4 more 命令

more 和 less 的主要区别是,less 允许使用箭头来前后移动,而 more 使用空格键和 b 键来前后移动。使用 ls 和 more来列举/etc 目录下的内容:
ls –al /etc | more
要使用 more 在文本文件中搜索关键字,按/键并输入命令搜索条目:/foo
使用空格键来先前翻阅页码。按 q 键退出。
more 命令标准格式为:
more [选项] [fileNames]
选项 含义
-num 一次显示的行数
-d 提示使用者,在画面下方显示[Press space to continue, q to quit.],如果使用
者按错键,则会显示[Press h for instructions.]而不是哔声
-l 取消遇见特殊字元^L(送纸字元)时会暂停的功能
-f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太
长的会被扩展为两行或两行以上) -p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
-c 跟-p 相似,不同的是先显示内容再清除其他旧资料
-s 当遇到有连续两行以上的空白行,就代换为一行的空白行
-u 不显示下引号(根据环境变数 TERM 指定的 terminal 而有所不同)
+/ 在每个档案显示前搜寻该字串(pattern),然后从该字串之后开始显示
+num 从第 num 行开始显示
fileNames 欲显示内容的档案,可为复数个数
例如:
more -s testfile 逐页显示 testfile 之档案内容,如有连续两行以上空白行则以一行空白行显示。
more +20 testfile 从第 20 行开始显示 testfile 之档案内容。

# 8、网络操作命令

命令 功能
ftp 传送文件
bye 结束连线并结束程序
ping 检测主机
telnet 远端登陆
rlogin 远端登入
netstat 显示网络状态

# 8.1 ftp 命令

ftp 命令用来传输文件,非常重要。如果在网络上看到一个很重要的文件,就可以用这个命令把那个文件传到自己的机器上来。
标准用法:ftp (-选项) 主机名称或 IP 地址
选项 含义
-D 详细显示命令的执行过程,便于排错和分析程序的执行情况
-I 关闭互动模式,不询问任何问题
-G 关闭本地主机文件名称支持特殊字符的扩充特征
-N 不适用自动登录。FTP 在启动时,会尝试自动登录远端系统,它会从用户
的转述目录中读取.netrc 文件的内容,以便自行登录。若该文件不存在,
FTP 会放弃自动登录,并询问用户的账号名称
-V 显示命令的执行过程
举例说明,用 ftp 登录 ftp.dark.com 主机,输入命令:ftp ftp.dark.com
注意:用户必须有相应的存取权限,否则不能从远程系统中获得文件或向远程系统中传输文件。为了使用 ftp 来传
输文件,用户必须知道远程计算机上的合法用户名和口令。

# 8.2 bye 命令

在 ftp 模式下,输入 bye 即可中断目前的连线作业,并结束 ftp 的执行,没有选项。

# 8.3 ping 命令

执行 ping 命令,它会使用 ICMP 传输协议,发出要求回应的信息,若远程主机的网络没有什么问题,就会回应信息,因而得知该主机运作正常。
标准用法:ping (-选项) 主机名称或 IP 地址
选项 含义
c 次数 设置完成要求回应的次数。ping 命令会反复发出信息,直到达到设定的
次数为止
D 使用 Socket 的 SO_DEBUG 功能
F 大量而且快速地送网络封包给一台机器,看它的回应。一般不到几秒钟,
送出去的封包就会超过两千个
I 秒数 指定收发信息的间隔时间,单位为 s,预置位 1s。与参数 f 不兼容
S bytes 设置数据包的大小。预设置为 56B,加上 8B ICMP 头文件,共 64B
R 忽略网关,直接将数据保送到远程主机上。如果该主机并非局域网的一份
子,就会传回错误信息
Q 不显示命令的执行过程,只显示结果
V 详细显示命令的执行过程,包括非回应信息和其它信息
T 存活数值 设置存活数值 TTL 的大小。TTL 是 IP 协议包中的一个值,它告诉网络,数
据包在网络中的时间是否太长而应被丢弃
举例说明,检测 des.bllod.net 主机网络功能是否正常,送出去要去信息需完成 5 次回应,每次间隔 10s,数据包的大小为 512B,输入命令:ping –c 5 –i 10 –s 504 –t 64 des.blood.net

# 8.4 telnet 命令

telnet 命令的主要功能是进行远程登录。该命令允许用户在使用 telnet 协议的远程计算机之间进行通信,用户可以通过网络在远程计算机上登录,就像登录到本地机上执行命令一样。为了通过 telnet 登录计算机,必须知道远程计算机上的合法用户名和口令。telnet 只为普通终端提供终端仿真,而不支持 X Window 等图形环境。
标准用法:
telnet 主机名或 IP
例如登录 IP 地址为 140.114.63.12 的计算机,输入命令:telnet 140.114.63.12
一旦 telnet 成功连接到远程系统上,就显示登录信息,并提示用户输入用户名和口令。如果用户名和口令正确,就能成功登录并在远程系统上工作。用户结束了远程会话后,一定要确保使用 logout 命令退出远程系统。然后 telnet报告远程会话被关闭,并返回到用户本地机的 shell 提示符下。

# 8.5 rlogin 命令

rlogin 也是用来远程登录的。它的英文含义是 remote login。该命令与 telnet 命令很相似,允许用户启动远程系统上 的交互命令会话。用法:
rlogin (-选项) host
选项 含义
8 允许输入 8 位字符数据
e 为 rlogin 会话设置转义字符,默认的转义字符是“~”,用户可以指定一个文字字符或一个/nnn 形式的八进制数
E 停止任何转义字符。当与-8 选项一起使用时,它提供一个完全透明的链接
l 用户名称 指定要登入远端主机的用户名称
L 使用 litout 模式进行远端登入操作
例如,要登入别人的计算机。输入命令:
rlogin –l inin 140.114.125.24

# 8.6 netstat 命令

netstat 命令的主要功能是了解 Linux 系统的网络情况。假设没有指定任何参数给 netstat 命令,则效果和指定-F 参数相同。
用法:netstat (-选项)
选项 说明
a 显示所有连线中的 Socket
F 显示 FIB
a 全部列出,包括正在等待的程序
c 持续列出网络状态
i 显示网络界面信息
n 使用网络 ip 地址代替名称
o 显示计时器
r 显示网络路径表
t 显示 TCP 协议的连接情形
u 显示 UDP 协议的连接情形
v 显示版本信息
w 显示 RAW 传输协议的连接情形

查看所有80端口使用情况·
netstat -ntulp |grep 80	
1
2

# 9、定位、查找文件的命令

命令 功能
Which 依序从 path 环境变量所列的目录中找出 command 的位置,并显示完整路径的名称
whereis 找出特定程序的可执行文件、源代码文件以及 manpage 的路径
find 按条件搜索,并执行一定的动作。
locate 带记忆的文件搜索
updatedb 更新 slocate 的索引数据库

# 9.1 which

语法 which command
说明
依序从 path 环境变量所列的目录中找出 command 的位置,并显示完整路径的名称。在找到第一个符合条件的程序文件时,就立刻停止搜索,省略其余未搜索目录。
范例,找出 ls 命令的程序文件的位置:which ls ,系统输出:/usr/bin/ls

# 9.2 whereis

语法 whereis [option] name
说明
找出特定程序的可执行文件、源代码文件以及 manpage 的路径。你所提供的 name 会被先除去前置的路径以及任何.ext 形式的扩展名。
whereis 只会在标准的 Linux 目录中进行搜索。
选项 含义
-b 只搜索可执行文件
-m 只搜索 manpage
-s 只搜索源代码文件
-B directory 更改或限定搜索可执行的文件的目录
-M directory 更改或限定搜索 manpage 的目录
-S directory 更改或限定搜索源代码文件的目录

# 9.3 find

语法 find paths expression [action]
说明
以 paths 为搜索起点逐层往下找出每一个符合 expression 条件的文件,并对该文件执行 action 所代表的动作。
expression 是搜索条件,它由一个代表匹配项目的选项以及一个代表匹配模式的参数构成。
action 是处理动作,它有一个代表“处理方式”的选项以及一个操作参数构成。若不指定 action,则默认动作是显示出文件名。
常用的搜索条件
-name pattern
-path pattern
-lname pattern
找出名称、路径名称或符号链接的目标匹配 pattern 模式的文件。pattern 可以包含 shell 的文件名通配符,路径是相对于搜索起点的。
常见处理动作
-print
显示出文件的相对路径(相对于搜索起点)。
-exec cmd /;
执行指定的 shell 命令。若 cmd 含有任何 shell 特殊字符,则他们之前都必须加上/符号,以免 shell 立刻执行他们。
在 cmd 里,可以用”{}”符号(包括双引号)表示 find 所找出的文件。
实例

将当前目录及其子目录下所有文件后缀为 .c 的文件列出来:
# find . -name "*.c"
将当前目录及其子目录中的所有文件列出:
# find . -type f
将当前目录及其子目录下所有最近 20 天内更新过的文件列出:
# find . -ctime -20
查找 /var/log 目录中更改时间在 7 日以前的普通文件,并在删除之前询问它们:
# find /var/log -type f -mtime +7 -ok rm {} \;
查找当前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件:
# find . -type f -perm 644 -exec ls -l {} \;
查找系统中所有文件长度为 0 的普通文件,并列出它们的完整路径:
# find / -type f -size 0 -exec ls -l {} \;
1
2
3
4
5
6
7
8
9
10
11
12

# 9.4 locate

语法 locate patterns
说明 第一次执行 locate 时,它会建立一个索引数据库,当往后再次执行时,它便从索引数据库中迅速找出文件的位置。locate 很适合用来反复搜索很少变动的目录树,但是对于刚改名的旧文件以及新建的文件,locate 就找不到了,除非重建数据库。

# 9.5 updatedb

语法 updatedb [option]
说明 更新 locate 的索引数据库。
选项
-e directories
略过 directories 所列的目录。

# 9、其他命令

命令 功能
echo 显示一字串
clear 清除显示器
lpq 查看在打印队列中等待的作业
lprm 取消打印队列中的作业
passwd 修改密码
lpr 打印
screen 终端管理
scp Linux 之间复制文件和目录

# 10.1 echo 命令

echo 命令用来在显示器上输出一段文字,这个命令常用来输出一些提示信息,因此这个命令的意义在于输出一些文字。它的用法也很简单:
echo –(参数) 字串 (可以用"”,也可以不用,显示略有区别)
参数 n 代表输出文字后不换行,如果不加参数会自动换行。
输入命令:echo “welcome to use Linux”
输出结果为:welcome to use Linux
如果不加"”,则输出结果为:welcome to use Linux
它们的区别在于后一个输出,每两个输出之间只隔一个空格,这是因为 echo 把这些输出看做字串的缘故。

# 10.2 clear 命令

clear 命令的主要功能是清除显示器,这个命令很简单,只要输入 clear 即可。

# 10.3 passwd 命令

passwd 命令用来修改用户的密码。
在 shell 下输入 passwd
然后,根据提示输入旧密码和新密码即可。

# 10.4 lpr 命令

lpr 命令的功能是把指定的文件发送到打印队列中。例如,lpr foo.txt 会打印 foo.txt 文件。
标准用法:lpr filename
要查看在打印队列中等待的作业,在命令行中输入命令 lpq。系统返回如下信息:
active root 389 foo.txt
在这个例子中,389 是作业号码。还可以取消打印队列中的作业,格式是:
lprm 作业号码
输入命令:lprm 389
这样就去除了 foo.txt 打印作业。

# 10.5 screen 命令

Linux screen命令用于多重视窗管理程序。
screen为多重视窗管理程序。此处所谓的视窗,是指一个全屏幕的文字模式画面。通常只有在使用telnet登入主机或是使用老式的终端机时,才有可能用到screen程序。
选项
-A  将所有的视窗都调整为目前终端机的大小。
-d<作业名称>  将指定的screen作业离线。
-h<行数>  指定视窗的缓冲区行数。
-m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r<作业名称>  恢复离线的screen作业。
-R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s< shell>  指定建立新视窗时,所要执行的shell。
-S<作业名称>  指定screen作业的名称。
-v  显示版本信息。
-x  恢复之前离线的screen作业。
-ls或--list  显示目前所有的screen作业。
-wipe  检查目前所有的screen作业,并删除已经无法使用的screen作业。

# 10.1 scp 命令

Linux scp 命令用于 Linux 之间复制文件和目录。
scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。
scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。
选项
-1: 强制scp命令使用协议ssh1
-2: 强制scp命令使用协议ssh2
-4: 强制scp命令只使用IPv4寻址
-6: 强制scp命令只使用IPv6寻址
-B: 使用批处理模式(传输过程中不询问传输口令或短语)
-C: 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p:保留原文件的修改时间,访问时间和访问权限。
-q: 不显示传输进度条。
-r: 递归复制整个目录。
-v:详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
-c cipher: 以cipher将数据传输进行加密,这个选项将直接传递给ssh。
-F ssh_config: 指定一个替代的ssh配置文件,此参数直接传递给ssh。
-i identity_file: 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
-l limit: 限定用户所能使用的带宽,以Kbit/s为单位。
-o ssh_option: 如果习惯于使用ssh_config(5)中的参数传递方式,
-P port:注意是大写的P, port是指定数据传输用到的端口号
-S program: 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。

从本地复制到远程
scp /home/space/music/1.mp3 root@www.runoob.com:/home/root/others/music 
scp -r /home/space/music/ root@www.runoob.com:/home/root/others/ 
从远程复制到本地
scp root@www.runoob.com:/home/root/others/music /home/space/music/1.mp3 
scp -r www.runoob.com:/home/root/others/ /home/space/music/
1
2
3
4
5
6