一、文件处理命令
1、cd切换目录
代码语言:javascript复制cd 目录名称
cd ~ 切换到家目录
cd / 切换到根目录
cd - 切换到上一次操作的目录
cd ..或cd ../ 切换到上级目录
cd .或cd ./ 切换到当前目录
2.ls显示当前目录下面所有文件和文件夹
代码语言:javascript复制ls -a 显示包含隐藏文件(. 文件名)在内的文件及文件夹
ls -l (也可使用”ll”) 显示文件/文件夹的详细信息
ls -R 递归显示目录下的目录和文件
ls -t 按修改时间显示
ls -r 逆序显示
3.pwd显示当前文件的路径
代码语言:javascript复制当该目录为链接时
- pwd -p 显示当前文件物理路径,即实际路径,而非链接路径
- pwd -L 显示当前默认路径,即链接路径
4.创建文件或文件夹
(1)touch创建文件
代码语言:javascript复制touch 文件名称;空格隔开文件名称可一次创建多个文件
touch想要创建文件名称为“a b.txt”的文件,文件名称必须用单引号引住。eg: touch ‘a b.txt’
(2)mkdir创建文件夹
代码语言:javascript复制mkdir 文件夹名 ;空格隔开文件夹名称可一次创建多个文件夹
mkdir -p 文件夹名/文件夹名 递归创建文件夹
eg:mkdir a/b/c/d
5.删除文件或文件夹
代码语言:javascript复制rm 文件名
rm -rf 文件夹名(可以删除非空文件夹)
rmdir 文件夹名(只能删除空文件夹)
6.cp复制文件或文件夹
代码语言:javascript复制cp 要复制的文件或文件夹路径 复制到的路径/(文件名或文件夹)
eg:cp /aa/1.txt /bb/2.txt 将aa目录下的1.txt复制到bb目录下,并改名为2.txt
cp -r 要复制的文件夹路径 复制到的路径/(文件夹名) 递归复制文件夹
-f 强行复制不询问
-r 复制目录及目录内的所有项目
例子:将/下的ky03里面的sz文件复制到/下的sz文件
cp ky03/sz /sz
7.mv 移动文件或者目录修改文件名
代码语言:javascript复制mv 要移动的文件或文件夹路径 移动到的路径/(文件名或文件夹)
eg:mv 001.txt ../002.txt 移动加改名
eg:mv 001.txt ./002.txt 改名
eg:mv a /home/ 移动文件夹(默认会递归移动)
eg:mv a /home/b 移动文件夹(默认会递归移动)并改名为b
8.查看文件内容
(1)cat查看文件内容
代码语言:javascript复制cat 文件名
cat -A 文件名 显示隐藏的内容
cat -n 文件名 显示行号
(2)more分页显示文件内容
代码语言:javascript复制more 文件名
enter键 查看下一行内容
f键/空格键 查看下一页内容
q/Q退出
(3)head显示文件的头部
代码语言:javascript复制head -5 文件名 显示文件的前5行
head -n 5 文件名 显文件的前5行
head 文件名(默认显示文件前10行)
(4)tail显示文件尾部
代码语言:javascript复制tail -5 文件名 显示文件的后5行
tail -n 5 文件名 显文件的后5行
tail 文件名(默认显示文件后10行)
tail -f 动态显示文件的追加内容 , 当监控的文件被删除以后 监控断开
tail -F 动态显示文件的追加内容 ,当监控的文件被删除以后,监控等待,等待监控同名文件
9.ln创建连接文件,等同于创建快捷方式
代码语言:javascript复制ln -s 要链接的文件名 链接后生成的文件名 (软链接)
ln 要链接的文件名 链接后生成的文件名 (硬链接)
- 区别:软链接删除原文件后,当前文件也失效,硬链接删除原文件后,当前文件仍然存在可用,想相当于一个备份
10.文件搜索命令
(1)find查找文件或者目录
代码语言:javascript复制find 文件目录 -name 文件名/文件夹名 根据文件名查找文件
eg: find / -name 1.txt 在根目录下查找文件名为1.txt的文件
(如果不记得文件名,可用?代替字符,*代替字符串)
find 文件目录 -size 文件大小 根据文件大小查找文件
eg:find / -size 204800 查找大于100M的文件
find 文件目录 -type 文件类型 根据文件类型查找文件
(2)grep在文件中查找字符并输出
代码语言:javascript复制grep 字符或字符串 文件目录
eg:grep pub /teach/1.txt -c 字符出现总行数
eg:grep public /teach/1.txt -n 行号
eg:grep public /teach/1.txt -i 不区分大小写
eg:grep public /teach/1.txt -v 输出除该字段以外的所有字符
(3)which显示系统命令所在目录(绝对路径及别名)
代码语言:javascript复制which 命令
二、管理命令
1.磁盘管理命令
(1)df 查看文件磁盘的空间
作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。看剩余空间
代码语言:javascript复制df -h 展示磁盘空间和使用情况 以易读的形式展示
df -a 显示所有的分区包括大小为0的
df -k 以kb为单位展示分区
df -m 以M为单位展示分区大小
(2)du查看文件或目录的大小
代码语言:javascript复制du -a 展示文件和子文件的大小
du -h 以易度的形式展示 M Kb
du -s 统计占有量
du /root/ -sh 统计root目录的总大小
*du命令面向文件,只计算文件或目录占用的空间。
(3)free查看内存及交换空间的使用状态
代码语言:javascript复制free -k: 以KB为单位显示,默认就是以KB为单位显示
free -m: 以MB为单位显示
free -g: 以GB为单位显示
2.进程管理命令
(1)ps查看系统中的进程
代码语言:javascript复制ps a:显示所有用户的进程
ps u:显示用户名和启动时间
ps x:显示没有控制终端的进程
ps e:显示所有进程,包括没有控制终端的进程
ps l:长格式显示
ps aux #查看系统中所有进程,使用BSD操作系统格式,unix
eg:ps -u or ps -l 查看隶属于自己进程详细信息
eg: ps -aux | grep sam 查看用户sam执行的进程
eg: ps -ef | grep init 查看指定进程信息
(2)pstree 显示进程树
代码语言:javascript复制pstree -u显示用户的进程
pstree -p 显示进程 PID
(3)top查看系统负载状况
代码语言:javascript复制top -d 指定几秒刷新一次
eg:指定10秒刷新一次
*CPU的平均负载情况
(单核)Load average 参数 一分钟内的CPU平均负载情况 五分钟 十五分钟
小于等于1时代表负载正常,大于1的时候代表负载过高 大于2的时候(需要增加配置)
(多核)的时候 *核数
(4)kill杀死关闭进程
代码语言:javascript复制kill -1 重启进程
kill -9 PID 杀死某个进程
3.用户管理命令及用户权限修改
(1)创建用户
代码语言:javascript复制useradd 用户名
(2)修改用户密码
代码语言:javascript复制passwd 用户名
(3)删除用户
代码语言:javascript复制userdel 用户名
(4)切换用户
代码语言:javascript复制su 用户名 切换用户
exit 退出当前用户
(5)chmod权限管理
三种基本权限 r 读权限(read) w 写权限(write) x 执行权限 (execute)
第1位:文件类型(d 目录,- 普通文件,l 链接文件) 第2-4位:所属用户(所有者)权限,用u(user)表示, 第5-7位:所属组权限,用g(group)表示 第8-10位:其他用户(其他人)权限,用o(other)表示 第2-10位:表示所有的权限,用a(all)表示
(6)权限修改
对文件的RWX更改
代码语言:javascript复制R 对文件的可读取的权限
W 对文件可以写数据的权限
X 对文件可以执行的权限
eg: chmod u r 1.txt 为1.txt文件的所属用户增加读权限
chmod u w g-r o x 1.txt 为1.txt文件所属用户增加写权限,为所属组去掉读权限,为其他用户增加执行权限
对文件夹的权限
代码语言:javascript复制对文件夹的权限
R 可以ls 查看文件夹的内容
W 可以创建文件夹和文件
X 可以进入到文件夹(cd)
文件夹具有可执行权他的可以写的权限才能生效
chmod -R u w g-r o x aa 为aa文件夹及文件夹下所有子文件的所属用户增加写权限,为所属组去掉读权限,为其他用户增加执行权限
**权限修改也可以用01二进制表示:
100–4—r
010–2—w
001–1–x
eg: chmod 777 1.txt 修改1.txt文件的所属用户、组、其他用户的权限为可读可写可执行
eg: chmod 461 1.txt 修改1.txt文件的所属用户的权限为可读、组的权限为可读可写、其他用户的权限为可执行
chown修改文件所属主
代码语言:javascript复制chown 用户名 文件及文件夹
chown -R 用户名 文件及文件夹 递归修改文件所属组
eg:chown mm aa
chown -R mm aa 将文件aa和文件夹aa下的所有的子文件的所属主也修改成reba
chgrp修改文件所属组
代码语言:javascript复制chgrp [group] file…
eg: chgrp root test.log 把test.log的所属组修改为root
合并修改文件所属组和所属主
代码语言:javascript复制chown user:group 文件名 修改用户所属组