文件处理命令
1.目录处理命令ls
ls 选项[aldh] [文件或目录]
-a 显示所有文件,包括隐藏文件
-l 详细信息显示
-d 查看目录属性
-h 友好的显示文件的大小
-i 显示节点
2.目录权限说明
-rw-r--r--
-文件类型 (- 二进制文件 d 目录 l 软链接文件)
rw- 表示u 代表所有者
r-- 表示g 代表所属组
r-- 表示o 代表其他人
r 代表读 w代表写 x 代表可执行
3.文件目录处理命令
- mkdir
mkdir -p [目录名] 创建新目录
-p 递归创建目录
可以同时创建多个目录,例:mkdir /data/apple /data/pear
- cd
cd [目录] 切换目录
.代表当前目录 .. 代表上级目录
- pwd
pwd 显示当前目录
- rmdir
rmdir [目录名] 删除空目录
- cp
cp -rp [原文件或原目录] [目标目录] 复制文件或目录
-r 复制目录
-p 保留文件属性 比如文件最后修改时间会保持不变
支持在复制过程中 对文件或目录改名
例:cp -r /data/apple /tmp/pear
支持复制多个文件或目录
例:cp /data/test1.php /data/test2.php /tmp
- mv [原文件或目录] [目标目录] 剪切文件、改名
剪切文件
例:mv /data/apple /tmp 将data目录下的apple目录剪切到tmp目录下
改名
例:mv /data/apple /data/pear 将名称data改为pear
- rm
rm -rf [文件或目录] 删除文件
-r 删除目录
-f 强制删除
删除一个不为空的目录 例:rm -rf /data/apple
- touch
touch [文件名] 创建空文件
- cat
cat [文件名] 显示文件内容
-n 显示行号
- tac
tac [文件名] 显示文件内容(反向显示)与cat正好相反
- more
more [文件名] 分页显示文件内容
(空格)或f 翻页
Enter 换行
q或Q 退出
- less
less [文件名] 分页显示文件内容 (可向上翻页 pgup键 上箭头向上翻一行)其他操作与more命令相同
可以搜索 例 /service 代表搜索该文件中的service 按n 切换到下一个
- head
head -n 行数 [文件名] 查看头部n行 默认10行
例:head -n 10 /data/test1.php
- tail
tail -n 行数 [文件名] 显示末尾n行 默认10行
例:tail -n 5 /data/test1/php
tail -f [文件名] 实时监控文件的数据变化
例 tail -f /etc/nginx/logs/error.log
权限管理命令
- chmod 改变文件或目录权限
chmod [{ugoa}{+-=}{rwx}] [文件或目录]
u --- 所属者 g --- 所属组 o --- 其他人 a --- 全部
+ --- 添加权限 - --- 删除权限 = --- 重置权限
r --- 读 w --- 写 x --- 执行
例:chmod g+w testfile 赋予testfile文件所属组写的权限
[mode=421] [文件或目录]
权限的数字表示 r --- 4 w --- 2 x --- 1
例:rwxrw-r-- rwx --- 7 rw- --- 6 r-- --- 4
chmod 764 testfile 赋予testfile权限为 rwxrw-r--
-R 递归修改 改变目录权限的同时,改变该目录下所有目录和文件的权限
- chown 改变文件或目录的所有者 只有root管理员可以操作
chown [用户名][目录或文件]
例:chown root testfile
- chgrp 改变文件或目录的所属组 只有root管理员可以操作
chgrp [用户组][文件或目录]
- umask 显示、设置文件的缺省权限
umask [-S]
-S 以rwx形式显示新建文件的缺省权限
文件搜索命令
- find 文件搜索
find [搜索范围][匹配条件]
例:
根据文件名查找:
find /etc -name init 在目录etc中搜索文件名init的文件 精准搜索
find /etc -name *init* 在目录etc中搜索文件名中含有init的文件 模糊搜索 通配符:* 匹配任意字符 ?匹配单个字符
find /etc -iname init 搜索时不区分大小写
根据文件大小查找:
find / -size +204800 在根目录下查找大于100MB的文件 +n 大于 -n 小于 n 等于
注意:linux 中文件的大小是根据数据块计算得出来的 1数据块 = 512字节 = 0.5kb 100MB = 102400kb = 102400 * 2 = 204800
根据所有者查找:
find /home -user test 在home目录下查找所有者为test的文件
-group 根据所属组查找
根据时间属性查找:
find /etc -cmin -5 在/etc目录下查找5分钟内被修改过属性的文件和目录 +n 大于 -n 小于
-amin 访问时间 access
-cmin 文件属性 change
-mmin 文件内容 modify
联合查找
find /etc -size +163840 -a -size 204800 在/etc文件下查找大于80MB小于100MB的文件
-a 两个条件同时满足
-o 两个条件满足其中一个即可
find /etc -name init* -a -type d 在/etc目录下查找以init开头的目录
-type [-fdl] 根据文件类型查找 -f 文件 -d 目录 -l 软链接文件
-inum 根据i节点查找
查找文件并对结果操作
find /etc -name inittab -exec ls -l {} \; 在/etc 目录下查找名为inittab的文件并且展示详细信息
格式:-exec/-ok [命令] {} \; 对搜索结果执行操作 -ok 执行操作时询问确认
- locate 在文件资料库中查找文件
locate 文件名
例:locate inittab 搜索inittab文件
locate -i inittab 搜索inittab文件,不区分大小写
updatedb 升级文件资料库
注意:临时文件目录下,locate查询不到
- which 搜索命令所在目录及别名信息
which 命令
例:which ls 查找ls命令所在目录
- whereis 搜索命令所在目录及帮助文档路径
whereis [命令名称]
例:whereis ls
- grep 在文件中搜寻字串匹配的行并输出
grep -iv[指定字串][文件]
-i 不区分大小写
-v 排除指定字串
例:grep -i multiuser /etc/inittab 查找并输出inittab文件中的multiuser
grep -v ^# /etc/inittab 排除inittab文件中以#开头注释的行
帮助命令
- man 获得帮助信息
man [命令或配置文件]
例:man ls 查看ls命令的帮助信息
man services 查看配置文件services的帮助信息
注意: 不能加绝对路径 优先显示命令的帮助信息
例:man 5 passwd 查看配置文件帮助信息
- whatis 查看命令的简短信息
whatis 命令
例:whatis ls
- apropos 查看配置文件的简短信息
apropos 配置文件
例:apropos services
- --help 查看帮助信息
命令 --help
例:ls --help
- help 查看shell内置命令的帮助信息
使用which 查不到路径的命令都属于内置命令
例 cd pwd umask
help 命令
例: help umask 查看umask命令的帮助信息
用户管理命令
- useradd 添加新用户
执行权限:root
useradd 用户名
例:useradd test
- passwd 为用户设置密码
执行权限:root
passwd 用户名
例:passwd test
- who 查看登录用户信息
执行权限:所有用户
语法:who
例:who
tty 本地登录 pts 远程终端
压缩解压命令
- gzip 压缩文件
语法:gzip [文件]
压缩后文件格式 .gz
注意:只能压缩文件 不能压缩文件。压缩成功后,不保留原文件
- gunzip(gzip -d) 解压缩.gz的压缩文件
语法:gunzip [压缩文件]
- tar
压缩:
语法:tar 选项[-zcf] [压缩后文件名] [目录]
-c 打包
-v 显示详细信息
-f 指定文件名
-z 打包同时压缩
压缩后文件格式:.tar.gz
例:tar -zcf testfile.tar.gz testfile
解压缩:
语法:tar 选项[-zxvf] [压缩后的文件名]
-x 解包
-v 显示详细信息
-f 指定解压文件
-z 解压缩
例:tar -zxvf testfile.tar.gz
- zip 压缩文件或目录
语法:zip 选项[-r] [压缩后文件名] [文件或目录]
-r 压缩目录
压缩后文件格式:.zip
- unzip 解压.zip类型的压缩文件
语法:unzip [压缩文件]
例 : unzip test.zip
- bzip2 压缩文件 一般大文件建议使用
语法:bzip2 选项[-k] [文件]
-k 产生压缩文件后保留原文件
压缩后的文件格式:.bz2
例:bzip2 -k testfile
tar -zjf test.tar.bz2 test 可以生成文件格式为.tar.bz2类型的压缩文件
- bunzip2 解压缩
语法:bunzip2 选项[-k] 压缩文件
-k 解压缩后保留原文件
例:bunzip2 -k test.bz2
tar -xjf test.tar.bz2 解压缩文件类型为.tar.bz2的压缩文件
网络命令
- write 给用户发信息,以ctrl + D保存结束
语法:write 用户名
例:write test
- wall 发广播信息
语法:wall [message]
例:wall hello world
- ping 测试网络连接性
语法:ping 选项 ip地址
-c 指定发送次数
例:ping 192.168.1.122
ping -c 3 192.168.1.122 发送三次
- ifconfig 查看和设置网卡信息
ifconfig 网卡名称 ip地址
例:ifconfig eth0 192.168.8.199 设置网卡ip
ifconfig 查看网卡信息
eth0 表示本地真实网卡
lo 回环地址 本地地址 127.0.0.1
- mail 查看发送电子邮件
语法:mail [用户名]
例:mail root
- last 列出目前和过去登入系统的用户信息
语法:last
例:last
- lastlog 检查某特定用户上次登录的时间
语法:lastlog
例:lastlog
lastlog -u 502 502 用户的uid 只查看uid为502的这个用户登录时间
- traceroute 显示数据包到主机间的路径
语法:traceroute
例:traceroute www.baidu.com
- netstat 显示网络相关信息
语法:netstat [选项]
选项:
-t tcp协议
-u UDP协议
-l 监听
-r 路由
-n 显示路由和端口号
例: netstat -tlun 查看本机监听的端口
netstat -an 查看本机所有的网络连接
netstat -rn 查看本机路由表
- setup 配置网络
语法:setup
例:setup
配置完需要 service network restart 重启网络配置才会生效
- mount 挂载命令
语法:mount [-t 文件系统] 设备文件名 挂载点
例: mount -t iso9660 /dev/sr0 /mnt/cdrom
- umount 卸载挂载
语法:umount [挂载点]
例:umount /dev/sr0
关机重启命令
- shutdown
语法:shutdown [选项] 时间
选项:
-c 取消前一个关机命令
-h 关机
-r 重启
例:shutdown -h now 立马关机
- logout 退出登录