man 将指令的具体信息显示出来。

man 是 manual 的缩写,将指令的具体信息显示出来。

who 查看有没有其它用户在线

who 命令查看有没有其它用户在线

shutdown 关机

shutdown [-krhc] 时间 [信息]

-k : 不会关机,只是发送警告信息,通知所有在线的用户 -r : 将系统的服务停掉后就重新启动 -h : 将系统的服务停掉后就立即关机 -c : 取消已经在进行的 shutdown

包管理工具

RPM 和 DPKG 为最常见的两类软件包管理工具:

  • RPM 全称为 Redhat Package Manager,最早由 Red Hat 公司制定实施,随后被 GNU 开源操作系统接受并成为许多 Linux 系统的既定软件标准。YUM 基于 RPM,具有依赖管理和软件升级功能。
  • 与 RPM 竞争的是基于 Debian 操作系统的 DEB 软件包管理工具 DPKG,全称为 Debian Package,功能方面与 RPM 相似。

文件属性

用户分为三种:文件拥有者、群组以及其它人,对不同的用户有不同的文件权限。
使用 ls 查看一个文件时,会显示一个文件的信息,例如 drwxr-xr-x 3 root root 17 May 6 00:14 .config,对这个信息的解释如下:

  • drwxr-xr-x:文件类型以及权限,第 1 位为文件类型字段,后 9 位为文件权限字段
  • 3:链接数
  • root:文件拥有者
  • root:所属群组
  • 17:文件大小
  • May 6 00:14:文件最后被修改的时间
  • .config:文件名

常见的文件类型及其含义有:

  • d:目录
  • -:文件
  • l:链接文件

9 位的文件权限字段中,每 3 个为一组,共 3 组,每一组分别代表对文件拥有者、所属群组以及其它人的文件权限。一组权限中的 3 位分别为 r、w、x 权限,表示可读、可写、可执行。

ls 列出文件或者目录的信息,目录的信息就是其中包含的文件。

  1. ## ls [-aAdfFhilnrRSt] file|dir
  2. -a :列出全部的文件
  3. -d :仅列出目录本身
  4. -l :以长数据串行列出,包含文件的属性与权限等等数据

mkdir 创建目录。

  1. ## mkdir [-mp] 目录名称
  2. -m :配置目录权限
  3. -p :递归创建目录

rmdir 删除目录,目录必须为空。

  1. rmdir [-p] 目录名称
  2. -p :递归删除目录

touch 更新文件时间或者建立新文件。

  1. ## touch [-acdmt] filename
  2. -a 更新 atime
  3. -c 更新 ctime,若该文件不存在则不建立新文件
  4. -m 更新 mtime
  5. -d 后面可以接更新日期而不使用当前日期,也可以使用 --date="日期或时间"
  6. -t 后面可以接更新时间而不使用当前时间,格式为[YYYYMMDDhhmm]

rm 删除文件。

  1. ## rm [-fir] 文件或目录
  2. -r :递归删除

mv 移动文件。

  1. ## mv [-fiu] source destination
  2. ## mv [options] source1 source2 source3 .... directory
  3. -f force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖

chmod 修改权限

可以将一组权限用数字来表示,此时一组权限的 3 个位当做二进制数字的位,从左到右每个位的权值为 4、2、1,即每个权限对应的数字权值为 r : 4、w : 2、x : 1。

  1. ## chmod [-R] xyz dirname/filename

示例:将 .bashrc 文件的权限修改为 -rwxr-xr—。

  1. ## chmod 754 .bashrc
  • 文件默认权限:文件默认没有可执行权限,因此为 666,也就是 -rw-rw-rw- 。
  • 目录默认权限:目录必须要能够进入,也就是必须拥有可执行权限,因此为 777 ,也就是 drwxrwxrwx。
  • 文件名不是存储在一个文件的内容中,而是存储在一个文件所在的目录中。因此,拥有文件的 w 权限并不能对文件名进行修改。

    ln 链接

    1. ## ln [-sf] source_filename dist_filename
    2. -s :默认是实体链接,加 -s 为符号链接
    3. -f :如果目标文件存在时,先删除目标文件

    cat 取得文件内容。

    1. ## cat [-AbEnTv] filename
    2. -n :打印出行号,连同空白行也会有行号,-b 不会

more 查看文件内容

和 cat 不同的是它可以一页一页查看文件内容,比较适合大文件的查看。

less 和 more 类似,但是多了一个向前翻页的功能。

head 取得文件前几行。

  1. ## head [-n number] filename
  2. -n :后面接数字,代表显示几行的意思

tail 是 head 的反向操作,只是取得是后几行。

常用参数
-f : 用于查阅正在改变的日志文件, 循环读取

压缩文件名

Linux 底下有很多压缩文件名,常见的如下:

扩展名 压缩程序
*.Z compress
*.zip zip
*.gz gzip
*.bz2 bzip2
*.xz xz
*.tar tar 程序打包的数据,没有经过压缩
*.tar.gz tar 程序打包的文件,经过 gzip 的压缩
*.tar.bz2 tar 程序打包的文件,经过 bzip2 的压缩
*.tar.xz tar 程序打包的文件,经过 xz 的压缩

gzip 压缩文件

gzip 是 Linux 使用最广的压缩指令,经过 gzip 压缩过,源文件就不存在了。
可以使用 zcat、zmore、zless 来读取压缩文件的内容。

  1. $ gzip [-cdtv#] filename
  2. -c :将压缩的数据输出到屏幕上
  3. -d :解压缩
  4. -t :检验压缩文件是否出错
  5. -v :显示压缩比等信息
  6. -# # 为数字的意思,代表压缩等级,数字越大压缩比越高,默认为 6

xz 压缩文件,压缩比更高,压缩时间更长

打包

压缩指令只能对一个文件进行压缩,而打包能够将多个文件打包成一个大文件。tar 不仅可以用于打包,也可以使用 gzip、bzip2、xz 将打包文件进行压缩。

  1. $ tar [-z|-j|-J] [cv] [-f 新建的 tar 文件] filename... ==打包压缩
  2. $ tar [-z|-j|-J] [tv] [-f 已有的 tar 文件] ==查看
  3. $ tar [-z|-j|-J] [xv] [-f 已有的 tar 文件] [-C 目录] ==解压缩
  4. -z :使用 zip
  5. -j :使用 bzip2
  6. -J :使用 xz
  7. -c :新建打包文件;
  8. -t :查看打包文件里面有哪些文件;
  9. -x :解打包或解压缩的功能;
  10. -v :在压缩/解压缩的过程中,显示正在处理的文件名;
  11. -f : filename:要处理的文件;
  12. -C 目录 在特定目录解压缩。

常用 -zcvf 和-zxvf 快捷打包压缩和解包解压缩

管道指令

管道是将一个命令的标准输出作为另一个命令的标准输入,在数据需要经过多个步骤的处理之后才能得到我们想要的内容时就可以使用管道。
在命令之间使用 | 分隔各个管道命令。

grep

g/re/p(globally search a regular expression and print),使用正则表示式进行全局查找并打印。

  1. $ grep [-acinv] [--color=auto] 搜寻字符串 filename
  2. -c 统计匹配到行的个数
  3. -i 忽略大小写
  4. -n 输出行号
  5. -v 反向选择,也就是显示出不包含指定表达式的哪些结果行
  6. -o : 参数后跟正则表达式,只显示出符合条件的内容,而不是显示出一整行信息
  7. --color=auto :找到的关键字加颜色显示

ps 查看进程

示例:查看自己的进程

  1. ## ps -l

示例:查看系统所有进程

  1. ## ps aux

示例:查看特定的进程

  1. ## ps aux | grep threadx

pstree 查看进程树。

示例:查看所有进程树

  1. ## pstree -A

top 实时显示进程信息。

示例:两秒钟刷新一次

  1. ## top -d 2

netstat

查看占用端口的进程
示例:查看特定端口的进程

  1. ## netstat -anp | grep port

kill 终止进程

通常,终止一个前台进程可以使用Ctrl+C键,但是,对于一个后台进程就须用kill命令来终止.
1.命令格式:
kill[参数][进程号]
最常用 -9 参数强制杀死进程

lsof -i:端口号

查看端口占用情况

nohup 后台启动

  1. #例如
  2. # 后面跟一个&符号表示将日志写到当前目录下
  3. nohup java -jar xxx.jar &

find 查找文件名符合条件的文件

  1. find -name 字符串表达式: 查找文件名符合条件的文件, find -name "test*"
  2. find -iname 字符串表达式:与上一个的区别在于加i参数后匹配时不区分大小写
  3. find 路径 -name 表达式: 当不加路径参数时,默认从当前目录出发递归查找,加上路径后,则从指定路径出发去递归查找

附录

windows下常用命令

netstat -ano : 显示网络状态

| findstr : windows下的管道命令

tasklist : 查看系统运行任务