常用系统工作命令
wget 使用命令行下载网络文件 “wget [参数] 下载地址”
参数
作用
-b
后台下载模式。
-O
下载到指定目录。
-t
最大尝试次数。
-c
断点续传。
-p
下载页面内所有资源,包括图片、视频等。
-t
递归下载。
elinks 实现一个纯文本洁面的浏览器 “elinks [参数] 网址”
yum install elinks
elinks [参数]网址
系统状态检测命令
ifconfig 获取网卡配置与网络状态等信息 “ifconfig [网络设备] [参数]”
uname 查看系统内核版本等信息 “uname [-a]”。
uptime 查看系统的负载情况 “uptime”。
free 显示当前系统中内存的使用量情况 “free[-m/-g]”。
who 查看当前登入主机的用户情况 “who[参数]”。
last 系统的登入记录 “last[参数]”。
history 显示历史执行过的命令 :“history[-c]”。
sosreport 手机系统配置并诊断信息后输出结论文档 “sosreport”。
工作目录切换命令
pwd 显示当前的工作目录 “pwd[选项]”。
cd 切换工作路径 “cd[目录名称]”。
参数
作用
-
切换到上一次的目录,如"cd -"
~
切换到“加目录”,如"cd ~"
~username
切换到其人用户的加目录,如"cd ~teak"
..
切换到上级目录,如"cd .."
ls 查看目录中有哪些文件 "ls [选项] [文件]"
ls -al
参数
作用
-a
查看全部文件(包括隐藏文件)
-d
仅看目录本身
-h
易读的文件容量
-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
ADSCII字符
-t o
八进制
-t d
十进制
-t x
十六进制
-t f
浮点数
tr 转换文本文件中的字符 "tr [原始字符] [目标字符]"
wc 统计指定文本的行数、字数、字节数 "wc [参数] [文本]"
参数
作用
-d 分隔符
指定分隔符,默认为Tab
-f
指定显示的行数
-c
单位改为字符
cut 通过列来提取文本字符 "cut [参数] [文本]"
参数
作用
-d 分隔符
指定分隔符,默认为Tab
-f
指定显示的行数
-c
单位改为字符
diff 比较多个文本文件的差异 "diff [参数] [文本]"
参数
作用
-b 分隔符
忽略空格引起的差异
-B
忽略空行引起的差异
--brief或-q
仅报告是否存在差异
-c
使用上下文输出格式
文本目录管理命令
touch 创建空白文件与修改文件时间 "touch [选项][文件]"
参数
作用
-a
近修改“访问时间”(atime)
-m
近修改“更改时间”(mtime)
-d
同时修改atime与mtime
-t
要修改成的时间[YYMMDDhhmm]
mkdir 创建空白的文件夹 "mkdir [选项] [目录]"
参数
作用
-m=MODE
默认的文件目录权限,如"-m 755"
-p
连续创建多层目录(若文件夹已存在则忽略)
-v
显示创建的过程
cp 复制文件或目录 "cp [选项] 源文件 目标文件"
参数
作用
-p
保留原始文件的属性
-d
若对象为"链接文件",则保留该"链接文件"的属性
-r
递归持续复制(用于目录)
-i
若目标文件存在则询问是否覆盖
-a
相当于-pdr(p,d,r为上述的参数)
mv 移动文件或改名 "mv [选项] 文件名 [目标路径|目标文件名]"
rm 删除文件或改名 "rm [选项] 文件"
参数
作用
-f
忽略警告信息
-i
删除前先询问
-r
删除文件夹
dd 指定大小的拷贝的文件或指定转换文件 "dd [参数]"
参数
作用
if
输入的文件名称
of
输出的文件名称
bs
设置每个"块"的大小
count
设置要拷贝"块"的个数
conv=ucase
将字母从小写转换为大写
conv=lcase
把字符从大写转换为小写
用户与组管理命令
useradd 创建新的用户 "useradd [选项] [用户名]"
参数
作用
-d
指定用户的家目录(默认为/home/username)
-D
展示默认值
-e
账号有效截至日期,格式:YYYY-MM-DD
-g
指定一个初始用户组(必须已存在)
-G
指定一个或多个扩展用户组
-N
不创建与用户同名的用户组
-s
指定默认的Shell
-u
指定用户的UID
passwd 修改用户的密码 "passwd [选项] [用户名]"
参数
作用
-l
锁定用户禁止其登录
-u
解除锁定,允许用户登录
--stdin
允许从标准输入修改用户密码,如(echo "NewPassWord"
passwd -stdin Username)
-d
使账号无密码
-e
强制用户下次登录时修改密码
-S
显示用户的密码状态
userdel 删除用户所有表格 "userdel [选项] [用户名]"
参数
作用
-f
强制删除用户,家目录与其相关文件
-r
同时删除用户,家目录与其相关文件
usermod 修改用户的属性 "usermod [选项] [用户名]"
参数
作用
-c
指定用户的家目录(默认为/home/username)
-d -m
展示默认值
-e
账号有效截至日期,格式:YYYY-MM-DD
-g
指定一个初始用户组(必须已存在)
-G
指定一个或多个扩展用户组
-L
不创建与用户同名的用户组
-U
指定默认的Shell
-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
匹配无所有组的文件
-newer f1 !f2
匹配比文件f1新却比f2旧的文件
--type b/d/c/p/l/f
匹配文件类型(块设备、目录、字符设备、管道、链接文件、文件文件)
--size
匹配文件的大小(+50k 查找超过50k的文件,而-50k则代表查找小于50k的文件)
-prune
忽略某个目录
--exec {};
后面可接对搜索到结果进一步处理的命令
管道命令符 "|"
将前一个命令的标准输出当作后后一个命令的标准输入"命令A|命令B|命令C"。
输入输出重定向
对于输出重定向符有这些情况
符号
作用
命令 > 文件
将标准输出重定向到一个文件中(清空原有文件的数据)
命令 2> 文件
将错误输出重定向到一个文件中(清空原有文件的数据)
命令 >> 文件
将标准输出重定向到一个文件中(追加到原有内容的后面)
命令 2>> 文件
将错误输出重定向到一个文件中(追加到原有内容的后面)
命令 >> 文件 2>$1
将标准输出与错误输出共同写入到文件中(追加到原有的内容的后面)
对于输入重定向有这些情况:
符号
作用
命令 < 文件
将文件作为命令的标准输入
命令 << 分隔符
从标准输入中读入,知道遇见“分隔符”才停止
命令 < 文件1 > 文件2
将文件1作为命令的标准输入并将标准输入到文件2
命令行通配符
通配符
作用
*
匹配零个或多个字符
?
匹配任意单个字符
[0-9]
匹配范围内的数字
[abc]
匹配已出的任意字符
查看开头的所有设备文件:
ls xxx*
查看后面有一个字符的设备文件:
ls xxx?
查看后面包含0-9数字的设备文件:
ls xxx2
查看后面是1或3或5的设备文件:
ls xxx[135]
常用的转义字符
字符
作用
反斜杠()
使反斜杠后面的一个变量变为单纯的字符串
单引号('')
转义其中所有的变量为单纯的字符串
双引号("")
保留其中的变量属性,不进行转义处理
反引号(``)
把其中的命令执行后返回结果
实用的PATH变量
alias 用于设置命令别名 "alias 别名=命令"
unalias 用于取消命令的别名 "unalias 别名"
重要的环境变量
在 Linux 系统中,变量名称一般都是大写的,这是一种约定俗成的规范。
变量名称
作用
HOME
用户的主目录"家"
SHELL
用户在使用的 Shell 解释器名称
HISTSIZE
输出的历史命令记录条数
HISTFILESIZE
保存的历史命令记录条数
邮件保存路径
LANG
系统语言、语系名称
RANDOM
生成一个随机数字
PS1
Bash 解释器的提示符
PATH
定义解释器搜索用户执行命令的路径
EDITOR
用户默认的文本编辑器
定义方法:变量名称=新的值
查看方法:echo $变量名称
export 命令用于将局部变量提升为全局变量 "export 变量名[=变量值]"