1、系统工作命令

man

echo 输出

date 系统时间与日期

%Y 年  %m 月  %d 日   %H 时  %M 分  %S 秒 %j 第几天
-s 设置当前时间

timedatectl 系统时间

status

状态信息

list-timezones

列出已知时区

set-time

系统时间

set-timezone

生效时区

reboot 重启

poweroff关机

wget 网络文件下载

-r

递归下载

-P

下载到指定目录

-p

下载页面所有资源

ps 查看进程状态(p77)

-a

显示所有进程

-u

用户以及其他信息

-x

显示没有控制终端的进程

pstree 进程树状图

top 动态监视进程活动及负载信息

系统整体信息p79

nice 调整进程优先级

范围(-20 ~19)

pidof 查询进程的pid

kill 终止进程

-9表示最高级别的强制杀死进程

killall 终止某个指定名称的服务的全部进程

2、系统状态检测命令

ifconfig 获取网卡配置与网络状态

uname 查看系统内核与系统架构

-a

uptime查看负载信息

loadaverage平均负载 : 1 5 15

free 内存使用信息

-h 人性化输出

who 当前登入主机的用户信息

last最近被访问记录

ping 测试主机之间网络的连通性

-c

发送次数

-l

指定网卡

-I

每次时间间隔

-W

最长等待时间

tracepath 数据包到达主机过程中的路由信息

netstat 显示网络连接、路由表、接口状态

-a

显示所有连接中的Socket

-u

显示UDP协议连接状态

-t

显示TCP协议连接状态

-i

显示网卡信息

history 显示执行过的命令

cat ~/.bash_history查看历史命令文件

(.)开头的表示隐藏文件

sosreport 收集系统配置及架构信息并输出诊断文档

3、查找定位文件命令

pwd显示当前所在目录

cd 切换当前工作路径

cd~回到家目录 cd - 返回上一次的目录

ls 显示目录中文件信息

-a 看到全部文件(包括隐藏文件) -l 看到文件属性 -d查看目录属性(-ld)

tree 树状目录

find 查找文件(全盘搜索,准确但效率低)

-name

名字 “linux”

-perm

权限

-user

所有者

-group

所属组

-exec {} ;

进一步处理搜索结果

loacte 按照名字快速搜索文件对应位置

先用updatedb生成索引数据库

再用locate+名称(locate whereis 找出所有包含whereis名称的文件)

whereis 按照名称快速搜索二进制程序、源代码、帮助文档

也是基于updatedb生成的索引库文件

which 按照名称快速搜索二进制程序

仅仅找到命令本身的路径

4、文件文本编辑命令

cat 查看纯文本(内容少)

-n显示行号

more 查看纯文本(内容多)

head 查看纯文本前几行

tail 查看纯文本后几行

tail -n 20 查看后20行

tai -f查看实时日志文件

tr 替换文本内容

wc 统计文本行数,字数

-l

显示行数

-w

显示单词数

-c

显示字节数

stat 查看文件具体存储细节和时间

Atime 内容最后一次被访问时间

Mtime 内容最后一次被修改时间

Ctime文件属性最后一次被修改时间

grep 按行提取文本内容

-n

显示行号

-I

忽略大小写

-v

反选

-c

仅显示找到的行数

cut按列提取文本内容

-d

设置间隔符号

-f

设置需要查看的列数

diff 比较文件差异

--brief

直接出结果

-c

内容具体的不同

uniq去除文本重复行

sort 对文本内容进行排序

5、文件目录管理命令

touch 创建文件或设置文件时间

-a

修改访问时间Atime

-m

修改修改时间Mtime

-d

都修改Atime,Mtime

mkdir 创建空白目录

-p递归创建

mkdir -p a/b/c/d/e

cp 复制文件或目录

cp [参数] 源文件 目标文件

-r 复制目录

-p保留原始属性

-d保留链接文件的属性

-i 询问是否覆盖

-a相当于-pdr

rm 删除文件或目录

-f 强制删除

-i 删除前询问

-r 删除目录

-v 显示过程

dd按照指定大小和个数的数据块复制或转换文件

格式: dd if=参数 of=参数 count=参数 bs=参数

if 输入的文件名称

of 输出的文件名称

bs 复制每个块的大小

count 复制块的个数

file 查看文件类型

tar 对文件打包解压

p109

6、输入输出重定向

输入输出重定向

标准输入重定向(STDIN 0):默认从键盘输入,也可以从其他文件或命令中输入


标准输出重定向 (STDOUT 0):默认输出到屏幕

错误输出重定向 (STDERR 2):默认输出到屏幕


管道符 |

把前一个命令原本输出屏幕的信息当作后一个命令的标准输入

tee 用于程序的显示并将其复制到一个文件

7、常用的转义字符

\反斜杠 使反斜杠后面的一个变量变为单纯的字符 /$就是$

‘ ’单引号 转义其中所有的变量为单纯的字符串 ‘ price is $PRICE ’就是 price is $PRICE

“ ”双引号 保留其中变量属性 " price is $PRICE "就是price is 5

、、反引号 把其中的命令执行后返回结果

$$显示当前进程的ID

8、环境变量

alias 创建一个属于自己的命令别名

语法格式为“alias 别名=命令”

unalias 取消别名

语法格式为“unalias 别名”

type 判断用户输入的命令是内部命令还是外部命令

export 将变量变成全局变量(p124)

unset 取消该变量

su 切换用户

9、Vim文本编辑器

:w

保存

:wq

退出

:q!

强制退出(放弃修改)

:wq!

强制退出并保存

:set nu

显示行号

:set nonu

不显示行号


从下到上搜索

/

从上到下搜索

Shell脚本执行

1、 bash 程序名.sh

2、完成路径+程序名.sh