9月13日任务
2.10 环境变量PATH
2.11 cp命令
2.12 mv命令
2.13 文档查看cat/more/less/head/tail
9月14日任务
2.14 文件和目录权限chmod
2.15 更改所有者和所属组chown
2.16 umask
2.17 隐藏权限lsattr/chattr
9月17日任务
2.18 特殊权限set_uid
2.19 特殊权限set_gid
2.20 特殊权限stick_bit
2.21 软链接文件
2.22 硬连接文件
2.10 环境变量PATH
PATH
真正使用一个命令应该使用绝对路径
#ls
#/usr/bin/ls
如果要将某个新路径添加到环境变量则需
#vi /etc/profile
并在最后一行添加
PATH=$PATH:/路径
删除即可删掉
2.11 cp命令
#cp copy
cp 被复制文件路径 复制文件路径及新名称
cp -r 拷贝目录 当目标目录存在时 会把源目录拷贝过来放入目标目录下(目标目录下无源目录同名称目录时)
有则会提示是否覆盖
建议所有目录后面都加斜杠/
#tree !$
\上一条命令最后一条参数
#cp -i
i是安全参数
绝对路径:
#/usr/bin/cp
2.12 mv命令
#mv
同目录下mv等于改名字
目标目录不存在相当于改名字
目标目录存在则会执行剪切
与cp类似
2.13 文档查看cat/more/less/head/tail
#cat -A 结果中有$符号表示行尾(结束符)
#cat -n 把行号显示出来
#wc 查看文件行数
#cat >> 追加重定向
#more 查看文件内容(特点:一屏一屏显示)空格键往下显示 ctrl b往前看 末尾直接退出
#less 与more相同 但可以用方向键 不会自动退出 按q退出 (查找: /[查找关键字])n键下一个 shift n 往前看 gG首尾
#head 查看文件头10行
#tail 查看文件尾10行 加-n固定几行 -f 实时动态显示
2.14
#ls -ld 查看当前路径的文件详细信息
---------
前三位所有者权限rwx 读 写 执行
r=4 w=2 x=1
中间三位所属组权限
其他用户权限
#chmod -R 更改其及其子目录文件的权限
2.15
chown/chgrp 更改所有者/所属组
#chown 所有者:所属组 同时更改两个
#chown -R 所有者:所属组所有者及所属组
2.16 umask
#umask 决定默认目录和文件的权限
规律 目录必须有x权限 才能浏览
目录权限=777-022=755 022为当前umask设置数值
文件权限=666-022=644 无减有等于无
2.17 隐藏权限
设置命令 chattr
#chattr +i [文件/目录] 设置只读
#chattr -i 取消只读
#chattr +a 只能追加及更改时间信息不能更改内容删除
#chattr -a 取消限制
目录的隐藏权限不影响子目录/子文件的修改
查看隐藏权限 lsattr
#lsattr -R 目录 结果类似tree查看包括子目录的文件的隐藏权限
#lsattr -a 查看包括隐藏文件
#lsattr -d 查看目录本身
2.18 特殊权限set_uid
特殊权限
1.set_uid
rws
当普通用户 使用这个文件 命令的时候可以临时拥有此文件命令所有者的身份
前提是此文件为二进制文件
#chmod u+s [命令文件路径] 设置特殊权限
#chmod u-s 取消
当普通用户无x权限时为rwS
2.set_gid
与set_uid相似 作用在组上
#chmod g+s [路径]
作用在目录后在目录下创建子文件子目录所属组与目录所属组保持一致
若未作用则默认root
3.stick_bit
#ls -ld /tmp/
drwxrwxrwt. 其中t为防删除位即stick_bit
父目录设置了stick_bit权限时 用户不能删除其它用户的文件
2.21 软链接文件
软链接 在文件本身存放了另一个文件的路径 路径越长 文件越大
建立软链接 ln -s [源文件路径] [软链接文件路径]
建立软链接尽量使用绝对路径
例子1
磁盘1空间将满 但某程序持续写入日志
解决办法
在磁盘2中复制该日志 并删除磁盘1的日志文件 同时建立该日志的软链接 达到持续使用的目的
命令
#df -h 查看磁盘分区
#cp /sda1/1.log /sda3/1.log 复制源
#rm /sda1/1.log 删除源
#ln -s /sda3/1.log /sda1/1.log 建立软链接
2.22 硬连接文件
硬链接特性:
1.相互为硬链接
2.文件特性相同 具有同一个inode
3.一方不受另一方被删除的影响
4.真正的文件存放在inode内
5.不允许将硬链接指向目录
6.只支持对文件做硬链接
7.不能跨分区 因为分区之间有独立的inode
. 点表示当前目录
.. 点点表示父目录
2.23 find命令
#find [路径] -name "[全名或者部分字*]" 结果为对应搜索的目录或文件
#find [路径] -type d -name "[全名或者部分字*]" 目录
#find [路径] -type f -name "[全名或者部分字*]" 文件
#find [路径] -type l -name "[全名或者部分字*]" 软链接文件
#find [路径] -type s -name "[全名或者部分字*]" socket文件
#find [路径] -type b -name "[全名或者部分字*]" block文件
#find [路径] -inum [inode number]
#find [路径] -[参数] -exec [其他命令(复制 更名 列表)] {} {} \;
-type
-name
-size +-k M
-mtime modify time [-1]小于一天 [+1]大于一天
-ctime change time
-atime access time
-mmin
-o 或者 在两个条件之间加入
其他寻找命令:
#which
#whereis
#locate
手动更新数据库命令 #updatedb
便捷操作命令:
#ctrl l
#ctrl d 退出一个终端 exit logout
#ctrl d 往后删
#ctrl u 类似ctrl c
#ctrl a 光标移到最前
#ctrl e 光标移到最后
#stat [文件路径] 查询文件详细信息 改动时间
后缀名
Linux里后缀名不严谨 不能定义文件类型
.conf 配置文件