0%

command

man (查看命令的帮助信息)

格式:man [命令名]

man命令中常用按键及用途

按键 用途
空格键 向下翻一页
page down 向下翻一页
page up 向上翻一页
home 返回首页
end 返回尾页
/ 从上至下搜索某个关键词,如”/linux”
? 从下至上搜索某个关键词,如”?linux”
n 定位到下一个搜索到的关键词
N 定位到上一个搜索到的关键词
q 退出帮助文档

man命令的帮助信息的目录结构以及意义

结构名称 代表意义
NAME 命令的名称
SYNOPSIS 参数的大致使用办法
DESCRIPTION 介绍说明
EXAMPLES 演示(附带简单说明)
OVERVIEW 概述
DEFAULTS 默认的功能
OPTIONS 具体的可用选项(带介绍)
ENVIRONMENT 环境变量
FILES 用到的文件
SEE ALSO 相关的资料
HISTORY 维护历史与联系方式

PS (用于查看系统中的进程状态)

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

linux中5种常见的状态

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

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

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

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

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

进程状态

参数 注释
USER 进程的所有者
PID 进程ID号
%CPU CPU占用率
%MEN 内存占用率
VSZ 虚拟内存使用量(单位KB)
RSS 占用的固定内存量(单位KB)
TTY 所在终端
STAT 进程状态
START 被启动的时间
TIME 实际使用CPU的时间
COMMAND 命令名称与参数

top (动态的监视进程活动与系统负载等信息)

top命令前五航为系统整体的统计信息

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

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

第三行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等(均为CPU数据并以百分比格式显示)

第四行:物理内存总量,内存使用量,内存空闲两、作为内核缓存的内存量

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

pidof (用于查询某个指定服务进程的PID值)

格式:pidof [参数] [服务名称]

kill (用于终止某个指定PID的服务进程)

格式:kill [参数] [进程PID]

killall (用于终止某个指定名称的服务所对应的全部进程)

格式:killall [参数] [进程名称]

类似于windows下的结束进程树

wget (使用命令下载网络文件)

格式:wget 【参数】 下载地址

-b 后台下载模式
-O 下载到指定目录
-t 最大尝试次数
-c 断电续传
-p 下载页面内所有资源,包括图片,视频等
-r 递归下载

free (查看当前系统中内存的使用量情况)

格式:free 【-m/-g】

who (查看当前登入主机用户的情况)

格式:who [参数]

last (查看系统的登入情况)

格式:last [参数]

history (显示历史执行过的命令)

格式:history [-c]

默认会保存1000条执行过的文件,若要修改可以直接编辑/etc/profile文件的HISTSIZE值

pwd (用于显示当前的工作目录)

格式:pwd [选项]

-p 显示真实路径(即非快捷链接的地址)

cd (用于切换工作路径)

格式:cd [目录名称]

参数 作用
- 切换到上一次的目录,如”cd -“
~ 切换到”家目录”,如”cd ~”
~username 切换到其他用户的home目录,如”cd ~teak”
.. 切换到上级目录,如”cd ..”

ls (用于查看当前目录下有哪些文件)

参数 作用
-a 查看全部文件(包括隐藏文件)
=d 仅查看目录本身
-h 易读的文件容量(如k,m,g )
-l 显示文件的详细信息

cat (用于查看纯文本文件(较短的))

格式:cat [选项] [文件]

参数 作用
-n 显示行号
-b 显示行号(不包括空行)
-A 显示”不可见”的符号,如tab,空格键等等

more (用于查看纯文本文件(较长的))

格式:more [选项] 文件

参数 格式
-数字 预先显示的行数(默认为一页)
-d 显示提示语句与报错信息

head (用于查看纯文本文档的前N行)

格式:head [选项] [文件]

参数 作用
-n 10 显示10行
-n -10 正常输出(如cat命令),但不显示最后的10行

tail (用于查看纯文本文档的后N行)

格式:tail [选项] [文件]

参数 作用
-n 10 显示后面的10行
-f 持续刷新显示的内容

od (查看特殊格式的文件)

格式:od [选项] [文件]

参数 作用
-t a 默认字符
-t c ASCII字符
-t o 八进制
-t d 十进制
-t x 十六进制
-t f 浮点数

tr (转换文本文件中得字符)

格式:tr [原始字符] [目标字符]

例:cat tr.txt [a-z] [A-Z]

wc (用于统计指定文本的行数、字数、字节数)

格式:wc [参数] 文本

参数 作用
-l 只显示行数
-w 只显示单词数
-c 只显示字节数

例:统计当前系统中的用户个数

wc -l /etc/passwd

cut (用于通过列来提取文本字符)

格式:cut [参数] 文本

参数 作用
-d 分隔符 指定分隔符,默认为tab
-f 指定显示的列数
-c 单位改为字符

例:

获取当前系统中所有用户的命长:

参数作用:-d以”:”来作为分隔符,-f参数代表只看第一列的内容

cut -d: -f1 /etc/passwd

获取root用户的默认SHELL解释器:

grep ^root /etc/passwd | cut -d: -f7

diff (用于比较多个文本文件的差异)

格式:diff [参数] 文件

参数 作用
-b 忽略空格引起的差异
-B 或略空行引起的差异
-brief或-q 仅报告是否存在差异
-c 使用上下文输出格式

touch (用于创建空白文件与修改文件时间)

格式:touch [选项] [文件]

参数 作用
-a 近修改’访问时间’(atime)
-m 近修改’更改时间’(mtime)
-d 同事修改atime和mtime
-t 要修改成的时间[YYMMDDhhmm]

mkdir (创建空白的文件夹)

格式:mkdir [选项] 目录

参数 作用
-m=MODE 默认的文件目录
-p 连续创建多层目录(若文件夹已存在泽忽略)
-v 显示创建的过程

cp (用于复制文件或目录)

格式:cp [选项] 源文件 目标文件

复制命令的三种情况:

    目标文件是一个目录,会将源文件复制到该目录中。

    目标文件是一个文件,会将源文件覆盖该文件。

    目标文件不存在,将会复制源文件并修改为目标文件的名称(重命名)。

参数 作用
-p 保留原始文件的属性
-d 若对象为’链接文件’,则保留该’链接文件’的属性
-r 递归持续复制(用于目录)
-i 若目标文件存在则询问是否覆盖
-a 相当于-pdr(p,d,r为上述的参数)

mv (mv命令用于移动文件或改名)

格式:mv [选项] 文件名 [目标路径|目标文件名]

rm (用于删除文件或目录)

格式:rm [选项] 文件

参数 作用
-f 忽略警告信息
-i 删除前先询问
-f 删除文件夹

dd (用于指定大小的拷贝的文件或指定转换文件)

格式:dd [参数]

参数 作用
if 输入的文件名称
of 输出的文件名称
bs 设置每个”块”的大小
count 设置要拷贝“块”的个数
conv=ucase 将字母从小写转换为大写
conv=lcase 把字母从大写转换为小写

将光驱设备拷贝成镜像文件:

dd if=dev/cdrom of=RHEL-SERVER-7.0-X86-LinuxProbe.Com.iso

生成一个560m的空白文件:

dd if=/dev/zero of=560_file count=1 bs=560M

将硬盘的MBR信息拷贝出来:

dd if=/dev/sda of=sda_image count-1 bs=512K

useradd (用于创建新的用户)

useradd [选项] 用户名

参数 作用
-d 指定用户的家目录(默认为/home/username)
-D 展示默认值
-e 账号有效截至日期,格式:YYYY-MM-DD
-g 指定一个初始用户组(必须已存在)
-G 指定一个或多个拓展用户组
-N 指定默认的shell
-s 指定默认的Shell
-u 指定用户的UID

创建名为linuxprobe的用户,并定义家目录路径,UID以及登录解释器(不允许登录):

useradd -d /gome/linux -u 8888 -s /sbin/nologin linuxprobe

passwd (用于修改用户的密码)

格式:passwd [选项] [用户名]

参数 作用
-l 锁定用户进制其登陆
-u 解除锁定,允许用户登陆
–stdin 允许从标准输入修改用户密码,如(echo “NewPassWord” \
-d 使账号无密码
-e 强制用户下次登陆时修改密码
-S 显示用户的密码状态

userdel (用于删除用户所有表格)

格式:userdel [选项] 用户名

参数 作用
-f 强制删除用户,家目录与相关条件
-r 同时删除用户,家目录与其相关条件

usermod (用于修改用户的属性)

格式:usermod [选项] 用户名

参数 作用
-c 填写账号的备注信息
-d -m -d与-m连用,可重新指定用户的家目录并自动旧的数据转移过去
-e 账户到期时间,格式“YYYY-MM-DD”“
-g 变更所属用户组
-G 变更拓展用户组
-L 锁定用户禁止其登录系统
-U 解锁用户,允许其登录系统
-s 变更默认终端
-u 修改用户的UID

groupadd (用于创建群组)

格式:groupadd [选项] 群组名

tar (用于对文件打包压缩或解压)

格式为:tar [选项] [文件]

参数 作用
-c 创建压缩文件
-x 解开压缩文件
-t 查看压缩包内有哪些文件
-z 用Gzip压缩或解压
-j 用bzip2压缩或解压
-v 显示压缩或解压的过程
-f 目标文件名
-p 保留原始的权限与属性
-P 使用绝对路径来压缩
-C 指定解压到的目录

grep (用于对文本进行搜索)

格式:[选项] [文件]

搜索某个关键词:grep (关键词) (文本文件)

参数 作用
-b 将可执行文件(binary)当做文本文件(text)来搜索
-c 仅显示找到的次数
-i 忽略大小写
-n 显示行号
-v 反向选择——仅列出没有“关键词”的行

find (用于查找文件)

格式:find [查找路径] (寻找条件) (操作)

参数 作用
-name 匹配名称
-perm 匹配权限,(mode为完全匹配,-mode为包含即可)
-user 匹配所有者
-group 匹配所有组
-mtime -n +n 匹配修改内容的时间(-n指n天以内,+n指n天以前)
-atime -n +n 匹配访问文件的时间(-n指n天以内,+n指n天以前)
-ctime -n+n 匹配修改权限的时间(-n指n天以内,+n指n天以前)
-nouser 匹配无所有者的文件
-nogroup 匹配无所有组的文件
-newerf1 !f2 匹配比文件f1新却比f2旧的文件
-type v/d/c/p/l/f 匹配文件类型(块设备、目录、字符设备、管道、链接文件、文件文件)
-size 匹配文件的大小(+50k查找超过50k的文件,而-50k则代表查找小鱼50k的文件)
-prune 忽略某个目录
-exec {} ; 后面可接对搜索到结果进一步处理的命令(下面会有演示)

例子:

1、搜索在/etc/自己拍卖行所有以host开头的文件

find /etc/ -name “host*” -print

2、

搜索整个系统中所有包含SUID的文件(因SUID的数字表示法是4,而减号表示只要包含)

find / -perm -4000 -print

3、

找出用户linuxprobe的文件并复制到/root/findresults目录

(重点是 “-exec {} :” 其中的{}代表find命令搜索出的文件,记住结尾必须是:)

find / -user linuxprobe -execcp -arf {} /root/findresults/ :

alias (用于设置命令的别名)

格式: alias 别名=命令

例如担心复制文件时误将文件覆盖,那么执行alias cp=”cp -i”

unalias (取消命令的别名)

格式:unalias 别名

env (查看环境变量)

格式:env(直接输入env回车)

export (将局部变量提升为全局变量)

格式:export 变量名

read(将用户的输入参数赋值给制定变量)

格式:” read -p [提示语句] 变量名”

chattr(用于设置文件的隐藏权限)

格式:chattr [参数] 文件

chattr +a linuxprobe

参数 作用
i 将无法对文件进行修改,若对目录设置后则仅能够修改子文件而不能新建或删除
a 仅允许补充(追加)内容无法覆盖/删除(append only)
S 文件内容变更后同步到硬盘(sync)
s 彻底从硬盘中删除,不可恢复(用0填充原文件所在硬盘区域)
A 不再修改这个文件的最后访问时间(atime)
b 不再修改文件或目录的存取时间
D 检查压缩文件中的错误
d 当使用dump命令备份时忽略本文件/目录
c 默认将文件或进行压缩
u 当删除此文件后依然保留其在硬盘中的数据,方便日后恢复
t 让文件系统支持尾部合并(tail-merging)
X 可以直接访问压缩文件的内容

lsattr(用于显示文件的隐藏权限)

格式:lsattr [参数] 文件

参数 作用
a 显示所有文件和目录
l 显示隐藏属性的全称(默认简写成一个字母)
R 地柜处理,将制定目录下的所有文件及子目录一并处理
d 若目标文件为目录,请加此参数

su(用于变更使用者的身份,切换登陆者)

格式:su [-] 用户名

root用户切换其他用户无需输入密码

普通用户切换用户需要输入密码

如果要将环境变量改变为新用户的,请加参数’-‘

sudo(用于给普通用户提供额外权利来完成原本超级用户才能完成的任务)

格式:sudo [参数] 命令名称

总结来说sudo的特色功能有:

1、限制用户执行指定的命令

2、记录用户执行的每一条命令

3、配置文件(/etc/sudoers)根据集中的管理用户、权限与主机等参数

4、验证过密码后5分钟(默认值)内无须再让用户验证密码,更加额度方便

sudo命令的常用参数包括有:

参数 作用
-h 列出帮助信息
-l 列出当前用户可执行的命令
-u 用户名或UID值 以指定的用户身份执行命令
-k 清空安全时间,下次执行sudo时需要再次密码验证
-b 在后台执行指定的命令
-p 更改询问密码的提示语

setfacl(用于增加或者修改ACL规则)

格式:setfacl [参数] 文件

参数 作用
-R 递归(对目录使用)
-m 设置文件的acl规则
-b 删除acl规则

getfacl(用于显示文件的ACL规则)

格式:getfacl 文件

mount(用于挂载文件系统)

格式:mount 文件系统 挂载目录

参数 作用
-a 挂载所有在/etc/fstab中定义的文件系统
-t 指定文件系统的类型

umount(撤销已挂载的设备文件)

格式:umount [挂载点/设备文件]

fdisk(用于管理磁盘分区)

格式:fdsik [磁盘名称]

参数 作用
m 查看全部可用的参数
n 添加新的分区
d 删除某个分区信息
l 列出所有可用的分区的类型
p 查看分区表信息
w 保存并退出
q 不保存直接退出

mkfs(用于格式化分区)

格式:mkfs.[分区格式] [硬盘分区名]

例:mkfs.xfs /dev/sdb1

df(查看挂载点信息与磁盘使用量)

格式:df [选项] [文件]

查看挂载信息与硬盘使用量:df -h

参数 作用
-a 显示所有的文件系统(包括虚拟的)
-total 展出出总体使用量
-h 更易读的容量格式如1K,234M,2G···
-i 展示出inode的信息(默认是磁盘使用信息)
-T 显示出文件系统的类型

du(查看磁盘的使用量)

格式:du [选项] [文件]

查看更目录中个文件夹所占空间:dh sh /

查看档案目录下个文件夹所占看就看“du -sh *

参数 作用
-a 评估每个文件而非目录整体占用量
-c 评估每个文件并计算出总占用量总和
-h 更易读的容量格式如1K,234M,2G···
-s 仅显示占用量总和

mdadm(管理系统软件RAID硬盘阵列)

格式:mdadm [模式] <RAID设备名称> [选项] [成员设备名称]

mdadm管理RAID阵列的动作:

名称 作用
Assemble 将设备加入到以前定义的阵列
Build 创建一个没有超级块的阵列
Create 创建一个新的阵列,每个设备具有超级块
Manage 管理阵列(如添加和删除)
Misc 允许单独对阵列的某个设备进行操作(如停止阵列)
Follow or Monitor 监控状态
Grow 改变阵列的容量或设备数目

mdadm管理RAID阵列的参数:

参数 作用
-a 检测设备名称
-n 指定设备数量
-l 指定raid级别
-C 创建
-v 显示过程
-f 模拟设备损坏
-r 移除设备
-a 添加设备
-Q 查看摘要信息
-D 查看详细信息
-S 停止阵列

ln(用于创建链接文件)

格式:ln [选项] 目标

创建硬链接:”ln 文件名 连接名”

创建软链接:”ln -s 文件名 连接名”

参数 作用
-s 创建”符号链接”(默认是硬链接)
-f 强制创建文件或目录的链接
-i 覆盖前先询问
-v 显示创建链接的过程

iptables(用于管理防火墙的规则策略)

格式:iptables[-t 表名] 选项 [链名] [条件] [-j 控制类型]

参数 作用
-P 设置默认策略:iptables -P INPUT (DROP\
-F 清空规则链
-L 查看规则链
-A 在规则链的末尾加入新规则
-I num 在规则链的头部加入新规则
-D num 删除某一条规则
-s 匹配来源地址IP/MASK,加叹号”!”表示除这个IP外
-d 匹配目标地址
-i 网卡名称 匹配从这块网卡流入的数据
-o 网卡名称 匹配从这块网卡流出的数据
-p 匹配协议,如tcp,udp,lcmp
-dport num 匹配目标端口号
-sport num 匹配来源端口号