1、目录处理命令
ls:显示当前目录下所有文件
选项:
-l:显示当前目录下所有文件的详细信息
-a:显示当前目录下所有文件,包含隐藏文件
-d:查看指定文件/目录的信息,而不是该目录下的文件/目录信息
-h:将文件大小转化成k,M等形式,一般结合-l使用
-i:查看文件的i节点(i节点:唯一标识文件的节点号)
# 执行ls -l命令获得的详细信息
-rw-r--r-- 1 root root 30887571 Jun 28 10:02 file
# -:表示文件类型,(-:表示文件,d:表示目录,l:表示link软链接)
# rw-r--r--:表示权限(此处分别对应了user、group、other的权限r、w、x,也即可读可写可执行权限)
# 1:表示文件的引用次数
# root:表示文件的所有者
# root:表示文件的所有组
# 30887571:文件大小
# Jun 28 10:02:文件最后一次被修改的时间
# file:文件名
# 执行ls -lh
-rw-r--r-- 1 root root 30M Jun 28 10:02 file
mkdir:创建文件夹
选项:
-p:递归创建
cd:切换目录
pwd:查看当前所在目录
rm:删除文件
选项
-r:递归删除
-f:强制删除
cp:复制文件
– 注意:复制后的文件的最后修改时间为复制时间;
-r:复制文件
-p:保存复制文件的属性(一般包括文件的创建时间)
mv:剪切一个或多个文件
2、文件处理命令
touch:创建文件(可创建多个)
touch fileName
touch file1 file2 file3
cat:查询文件(适用于短文件查询)
选项:
-n:显示行号
tac:倒着显示;
more:长文件浏览(分页显示文件内容,但不可向上翻页)
空格/F键:翻页;
q/Q:退出;
less:长文件浏览(分页显示,可向上翻页)
page up键:向上翻页
/:/搜索关键词
head:查看文件前几行,默认显示前10行
选项:
-n number:前number行
tail:查看文件末尾几行,默认后10行
选项:
-n number:查看文件末尾number行
-f:查看文件状态
# 查看日志常用命令
tail -500f logName.log
ln:生成链接文件,默认为硬链接
-s:生成软链接文件;
> 软链接:类似于windows系统的快捷方式,执行的是文件本身;
所以软链接文件的权限不决定原文件的权限。同时,若原文件删除,软链接无效;
> 硬链接:可以同时更新,与原文件完全相同,他们共用一个i节点;
硬链接不能跨分区,软链接可以跨分区;
硬链接不能针对目录使用;
3、权限管理命令
-> 注意: 更改权限的对象:文件所有者,管理员root;
chmod
chmod [{user、group、other、all}{+、-、=}{r、w、x}] 文件/目录;
选项:
-R:递归修改(包括该目录及其所有子目录);
权限 | 文件 | 目录 |
---|---|---|
r | 查看文件内容 | 可列出目录中的内容 |
w | 可修改文件内容 | 可在该目录中创建或删除文件 |
x | 可执行文件 | 可进入目录(cd) |
==> 所以要注意的是,当一个目录具有w权限的时候,即使该目录下的文件不具有w权限,仍然是可以将该文件删除的;
chown:改变文件的所有者,只能由root来改变;
chown 用户名 文件名(注意用户名必须是已经存在的用户名)
添加用户:useadd 用户名
chgrp:改变文件的所属组;
chgrp 用户组 文件名
添加用户组:groupadd 用户组名
查看新建文件的缺省权限:umask -S
注意:mkdir命令创建文件夹时使用的是缺省权限;而使用touch创建文件的时候,会基于缺省权限的基础生去除可执行权限;
另外:使用umask命令查看的0002,第一个0表示特殊权限,002与777后就是目录的权限,然后去除x后就是文件的权限;
更改权限命令:umask 077
3、文件搜索命令
find
find 搜索范围 [参数] 匹配条件
find ./ -name "yin*" # 在当前目录及其子目录下寻找以yin开头的文件或目录
-name:按文件名搜索
*:匹配多个字符;
?:匹配单个字符;
-iname:不区分文件名的大小写;
-size [+-] n:根据文件大小进行搜索
+ n:大于n
- n:小于n
n:等于n
==> 注意的是:n的单位是数据块(1数据块=512字节=0.5k)
-user:根据所有者进行搜索;
-cmin [+-] minutes:根据文件属性(文件修改时间)进行搜索;
+ minu:更改时间大于minutes分钟
- minu:更改时间在minutes分钟之内;
-amin :根据访问时间access;
-mmin:根据文件内容modify;
-type 文件类型:根据文件类型进行查找
f:文件
d:目录
l:软链接文件
-exec/-ok 命令 {} \;:对搜索结果执行操作(注意大括号两边都有空格)
-exec:无询问信息;
-ok:有询问信息;
-inum:用i节点进行搜索;
locate:使用资料库搜索
新创建的文件/目录,由于资料库还没来得及更新,所以可能找不到;
可以使用手动更新资料库:updatedb
tmp等存放临时文件的目录,资料库中不进行收录;
-i:不区分大小写;
locate chen* # 查找以chen开头的文件/目录名
which:
which 命令名:查找命令所在目录及其别名;
whereis:
whereis 命令名:查找命令及其帮助文档所在位置;
grep:在文件内容中进行查找
grep 关键词 文件名
-i:不区分大小写;
-v:排除指定的子串;
例如:grep -v # inittab:去除所有有#的行
grep -v ^# inittab:去除以#开头的行
4、帮助命令
man
man [1/5] 命令/配置文件(不用加绝对路径)
如若该名字既是一个命令又是一个文件,可以通过1/5来进行区分;
1:命令的帮助
5:配置文件的帮助;
whatis:帮助文档(命令)的简短版;
apropos:配置文件的简短信息;
–help:查看命令的主要参数
命令 --help
ls --help
info:同man
help:查看shell内置命令
help if
help cd
5、用户管理命令
useradd:添加用户
passwd:设置用户密码
who:
lindir :1 2020-05-26 18:16 (:1)
# 登录的用户名 登录的终端 登录时间 ip地址
w:
05:35:09 up 1 day, 18:33, 1 user, load average: 1.52, 0.57, 0.36
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
lindir :1 :1 26May20 ?xdm? 49:04 0.12s /usr/lib/gdm3/gdm-x-session --run-script env GNOME_SHELL_
# up:连续运行的时间
# susers:当前共有几个用户登录
# load average:负载均衡的指数
# TTY:本地终端
# PTS:远程终端
# IDLE:空闲时间
# PCPU:CPU时间(占用)
# WHAT:执行的命令(当前)
6、网络命令
write:给用户发消息
write 用户名
Ctrl+D:保存结束
wall:发广播信息
wall 信息
ping:测试网络连通性
-C num:ping的次数
ifconfig:查看网卡信息
mail:查看发送电子邮件
mail 用户名
Ctrl+D:保存发送
接收命令:mail
help
last:查看目前为止所有用户的所有登录信息;
lastlog:查看所有用户最后一次的登录信息;
lastlog -u uid:查看某用户的登录信息;
traceroute:探测到达网站的所有路径
netstat:查询网络状态
-t:TCP协议
-u:UDP协议
-l:listen监听
-r:路由(网关)
-n:显示IP地址和端口号
例如:
netstat -tlun:查看本机监听的端口
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
# Proto:协议
# Recv-Q Send-Q:0表示畅通
# Local Address:目标ip地址:端口号
# Foreign Address:发起者的ip地址:端口号(1024以上的随机分配端口号)
# State:状态(tcp由于需要持续监听,所以有listen状态,udp没有)
netstat -an:查看所有的网络连接
netstat -rn:查看本机路由表
set up:配置IP地址,永久生效;
注意配置完要重启服务:service network restart
mount:挂载命令
mount [-t 文件系统] 设备文件名/挂载点
7、关机重启命令
shutdown
shutdown -h 20:30 指定时间关机
-r:重启
-c:取消前一个关机命令
其他命令
关机:halt/poweroff/init 0
重启:reboot/init 6
系统运行级别
级别 描述
0 关机
1 单用户(安全模式)
2 不完全多用户,不含NFS服务
3 完全多用户
4 未分配
5 图形界面(X)
6 重启
==> NFS:网络文件系统,实现两个Linux/unix的文件共享,有一定的风险
cat /etc/inittab:修改系统默认运行级别
runlevel:查询系统运行级别
init 5 =>更改系统运行级别