别人的Linux私房菜(7)文件与目录管理
- 代表上一个工作目录
~username代表用户所在的家目录
cd切换目录 配合之上的参数 . .. / ~ ~name (change directory)
pwd显示当前目录 可选参数-P 显示真正的路径而不是链接路径 (print working directory)
mkdir建立新的目录 -m设置新建目录的权限, -p创建递归目录
rmdir删除一个空目录 -p递归删除 仅能删除空目录,使用rm -r text可以删除全部
使用echo $PATH可以显示出当前的执行文件路径
PATH="${PATH}:/root" 将目录/root添加到PATH中便于执行
ls -a全部信息 -d仅列出目录本身 -l详细信息显示 后加路径显示该路径下信息 --color=never不显示颜色 --full-time 显示文件完整时间
cp 复制文件或者目录
-a相当于-dr(可用于完整复制权限)
-d如果源文件为链接文件则复制链接文件而不是文件本身
-i如果是覆盖文件会询问
-p连同属性一起复制(可用于完整复制权限)
-r递归复制
-s复制成为符号链接文件
-l进行硬连接
-u目标与源文件差异时才进行复制
cp命令受到用户权限的限制,-a在一些用户权限的情况无法完成权限复制
rm -i 删除时进行询问
-r 递归删除目录
-f忽略不存在的文件
mv -f目标文件存在则不询问直接覆盖
-i 询问是否覆盖
-u 目标文件存在则选择比较新的文件
可用于重命名 具体通过手册,可以移动文件夹和文件等
获取文件名对应的路径
basename /etc/sysconfig/network
目录名对应的路径
dirname /etc/sysconfig/network
文件内容查看:
cat从第一行开始显示 -n打印行号 -A包含特殊符号 tab以^I表示 linux的换行符为^$ Windows为^MS
tac从最后一行开始显示
nl显示并输出行号 nl -b a -n rz -w 3。显示出空行,行号列出前加0 。总宽度为3。
more一页一页显示 空格下翻页,enter下一行,/查找 b回翻页
less比more多了向前翻页 空格 pgup pgdn 翻页/ ? n重复前一个查找 N反向重复前一个查找 g前进到第一行 G最后一行 q退出
head只看前几行 head -n 20 /etc/man_db.conf head -n -20 /etc/man_db.conf前20行不打印
tail只看最后几行 tail -n 20 /etc/man_db.conf tail -n -20 /etc/man_db.conf -f持续监测
head -n 20 /etc/man_db.conf | tail -n 10 列出10-20行的数据 也可以用cat加管道
od以二进制文件方式读取文件内容 od -t c /usr/bin/passwd等
echo passwd | od -t oCc 显示对应ascii的一个简便方案
修改时间mtime
状态时间ctime
读取时间atime
ls -l --time=cime可以查看...
touch命令修改文件时间或创建文件 -a自定义atime -m修改mtime ctime不能改
touch -t 202001011212 bashrc修改时间为2020 0101 12 12
umask为建立新文件或者目录后的默认权限。数字为减掉的权限数值,-S为最后的权限数值。设置可参考/etc/bashrc
文件权限最大为666.目录权限最大为777
隐藏权限
chattr [+=-] 设定
A为修改时间的不改变,
a文件增加数据,不能修改和删除数据只有root可以设置,
d文件不会被dump备份,
i不能被删除改名设置链接写入新增数据
lsattr显示文件隐藏属性
文件特殊权限:
SUID 文件拥有者x的权限上,变为s。执行者拥有对该文件的执行权限,在执行过程中会暂时获得拥有者对该文件的权限。如密码修改过程等。
SGID 文件用户组x的权限上,变为s。执行则具备了执行权限后,在执行过程中会获得该用户组的支持。
SBIT 文件其他人x的权限上,变为t。针对目录有效。用户对文件夹wx具备权限时,具有写入权限。建立目录时,只有自己和root可以删除。
SUID 4 SGID 2 SBIT 1
大写的S或T
file命令查看文件属性格式
file /usr/bin/passwd
脚本文件的查找which
which ifconfig
文件的查找:
whereis查找系统某些指定目录下的文件, -l 列出部分查找目录 -m在说明手册下查找 等
locate按照数据库来查找文件名 , -l+数字输出结果只取前几行 。-S记录使用数据库文件的相关信息 等
数据库有些每天一更,updatedb直接手动更新数据库
find与时间有关的选项
find / -mtime 0 列出/下24小时内变动的文件 -+空格 nunber 表示在几天之内、几天之外、几天上(之前)的文件时间点查找
find /etc -never /etc/passwd辨别文件的新旧关系
find与使用者,用户组有关的选项
find / -nouser查找无用户的文件 find /home -user bai 查找用户为bai的文件
find与文件权限和名称有关的选项
find / -perm /7000查找权限为7000的文件
find / -name "*passed*"
额外操作:
find / -perm /7000 -exec -l {} \; 执行查找结束以后的ls -l命令 {}为内容、\;结束
find / -size +1M 文件中大于1M的文件
别人的Linux私房菜(7)文件与目录管理的更多相关文章
- 别人的Linux私房菜(17)进程管理与SELinux初探
程序在磁盘中,通过用户的执行触发.触发事件时,加载到内存,系统将它定义成进程,给予进程PID,根据触发的用户和属性,给予PID合适的权限. PID和登陆者的UID/GID有关.父进程衍生出来的进程为子 ...
- Linux基础学习:文件与目录管理
目录与路径 目录的相关操作 几个特殊的目录: . :表示当前目录 .. :表示上一层目录 - :表示前一个工作目录 ~ :表示当前用户所在的主文件夹 ~account :表示account用户所在的主 ...
- Linux 的基本操作(文件与目录管理)
文件与目录管理 在linux中什么是一个文件的路径呢,说白了就是这个文件存在的地方,例如在上一章提到的/root/.ssh/authorized_keys 这就是一个文件的路径.如果你告诉系统这个文件 ...
- 别人的Linux私房菜(8)Linux磁盘与文件系统管理
虚拟机的磁盘通常为:/dev/vd[a-p] LVM和软件磁盘阵列 software RAID可以将一个分区格式化为多个文件系统或者多个分区格式化为一个文件系统. 索引式文件系统中:如ext2.ext ...
- 别人的Linux私房菜(6)文件权限与目录配置
账号与一般身份用户存放在/etc/passwd文件中 个人密码存放在/etc/shadow文件中 Linux所有组名存放在/etc/group中 ls -al查看所有信息并显示权限等 文件权限的10字 ...
- 别人的Linux私房菜(18)认识系统服务(daemon)
完成服务service的程序称为daemon.完成计划性的服务程序如crond是一个daemon. 早期的System V的init管理daemon操作中,系统内核首先调用init,然后init运行系 ...
- 别人的Linux私房菜(14)Linux账号管理和ACL权限设置
用户标识符UID.GID 用户的账号信息,主要是指UID对应.组和GID对应 检查系统中是否存在用户bin:id bin 登录shell验证账号密码的步骤:找到/etc/passwd核对是否存在账号, ...
- 别人的Linux私房菜(23)软件安装RPM、SRPM、YUM
RPM(RedHat Package Manager),不同Linux发行版发布的RPM文件甚至不同版本,不通用. SRPM为Source RPM,所提供的软件内容没有经过编译,格式为xxx.src. ...
- 别人的Linux私房菜(19)认识与分析日志文件
日志文件通常只有root可以读取,解决系统和网络方面的问题. /var/log/boot.log本次开机系统检测和启动硬件,和内核支持的相关功能的信息记录. /var/log/cron计划任务有没有被 ...
随机推荐
- 刘志梅 201771010115 《面向对象程序设计(java)》 第八周学习总结
实验六 接口的定义与使用 实验时间 2018-10-18 1.实验目的与要求 (1) 接口定义:接口不是类,而是对类的一组需求描述,这些类要遵从接口描述的统一格式进行定义:由常量和一组抽象方法组成:接 ...
- JS基础——变量
引用类型:对象 数组 函数 }; var b =a ; b.age = ; console.log(a.age);// 21 传递的是地址, a,b同地址 值类型: var a =100; var ...
- DBsever工具连接mysql数据库
当我们安装网DBeaver的时候,怎么通过这个工具来连接Mysql数据库呢 像这个地方就按平时你的数据库信息输入就可以了 接下来配置JDBC的内容 重点说一下驱动包的版本问题,因为我安装的mysql是 ...
- django之用户表的继承
有这样一个场景,之前已经设计好了用户的信息表,但是再设计另外一个业务表的时候,信息有点重复,如何重新设计呢? 可以采用表的继承,让一个表作为基类,业务表就可以继承它 要注意以下几点 1 作为基类的表使 ...
- Linux下安装GitHub
安装GitHub 1.下载安装git: yum -y install git git-core git-doc 2.运行完执行 ssh-keygen -t rsa -C "your@emai ...
- ARM中R0-R15寄存器的作用
根据“ARM-thumb 过程调用标准”: 注意:在中断程序中,所有的寄存器都必须保护,编译器会自动保护R4-R11
- javascript权威指南第1章Js概述js语言核心
<html> <head> <script> function Point(x,y){ this.x=x; this.y=y; } ,); console.log( ...
- 用react编写一个可以编辑的表格
这只一个雏形,但是可以用了.难点是如何点击每行后面的编辑按钮,让当前行的格子都变成input. import {Component} from 'react' const Action = props ...
- LevelDB源码分析-TableBuilder生成sstable
TableBuilder生成sstable(include/table_builder.h table/table_builder.cc) LevelDB使用TableBuilder来构建sstabl ...
- openwrt从18.0.1降级回到17.0.6遇到的问题
因为觉得openwrt的18的配置检查功能很费时,特别是遇到ar93xx慢的真可以,所以决定从18.0.1降回到17.0.6上 先把18.0.1的配置backup出来,然后刷17.0.6,再把back ...