• linux(2)文件和目录管理(新增,删除,复制,移动,文件和目录权限,文件查找)


    一.目录与路径

    1.相对路径与绝对路径
    绝对路径:/开头, cd /usr
    相对路径:cd ../..
    2.目录操作(cd:change directory)
    .:当前目录
    ..:上一层目录
    -:上一个目录
    ~:当前用户所在的家目录,
    ~用户名:用户名的家目录 如:
    [yuanyuan@localhost Desktop]$ cd ~yuanyuan
    [yuanyuan@localhost ~]$ pwd
    /home/yuanyuan
    pwd(print working directory):打印路径,pwd -P 显示绝对路径,特别是对于链接文件 /var/mail
    [yuanyuan@localhost mail]$ pwd
    /var/mail
    [yuanyuan@localhost mail]$ pwd -P
    /var/spool/mail
    3.目录和文件操作:
    mkdir(-p):创建新目录 ,(-m) 加权限,如: mkdir -m 771 -p test/test
    rmdir(-p ):删除目录 ,如:rmdir -p test/test ,强制删除目录下的内容:rm -rf 文件路径
    PATH: echo $PATH path设置的搜索路径 ,直接执行: /bin/ls 不加cd , 添加类似的文件: PATH="PATH"/mnt
    cp:cp -i(询问)/-r(目录递归)/-u(太旧,更新) 源文件 目的文件目录 (复制后成为目的文件的权限)
    cp -l/-s: 源文件 目的文件 复制一个链接,建立一个符号链接文件 cp -p/-a: 包括源文件的权限一起复制过来
    rm: rm -rf 递归删除
    mv:-i(询问),-f(强制移动),-u(源文件比较新才更新)
    获取文件/目录路径:dirname /basename
    [yuanyuan@localhost bin]$ dirname /home
    /
    [yuanyuan@localhost bin]$ basename /home
    home
    touch:创建一个文件
    3.查看文件内容:(-n显示行号 -n 数字 显示几行)
    cat(concatenate连续):从第一行开始显示文件内容
    tac:从最后一行开始显示文件内容
    more:一页一页显示文件内容
    less:同上,不过可以向前翻页
    head:只看前几行
    tail:只看后几行 ,tail -f 动态监控
    od:od -t 类型(a/c/d/f/o/x) 读取二进制文件可以用这个,不会乱码,如 od -t c /usr/bin/passwd
    (1)文件的三个时间:
    mtime:修改文件内容的时间,ls显示的是这个时间
    ctime:修改文件属性的时间,访问的话可以用 ls -l --time=ctime 文件名
    atime:访问文件的时间
    (2)修改文件时间:
    touch -a 修改访问时间atime
    touch -d "2 days ago" 文件名:修改ctime
    touch -t 1602141212 文件名:修改atime和mtime
    touch有两个作用:一个是创建文件,一个是修改文件的各种时间
    4.文件与目录的默认权限与隐藏权限
    例:用户身份a ,用户组为 users,家目录在/home/a,若root将~/.bash复制给a,则操作如下:
    cp ~/.bash ~a/.bash1 //重命名,避免覆盖 chown a:users ~a/bash1 //修改用户所在组,因为复制过来时都是root权限
    (1)umask :去掉的权限,对于root是022,对于一般用户是002
    创建文件:644
    创建文件夹:755
    (2)隐藏属性:chattr 和 lsattr
    chattr +i 文件名/目录名 :则该文件不能做任何修改,root也不行,只有 -i后才可以 (主要用于系统安全性方面)
    lsattr:隐藏文件的属性也一起显示出来
    (3)文件特殊权限
    SUID:只针对文件,如 -rwsrw-r-- 此时出现s,说明set uid ,用户有root的权限,例如 /etc/passwd 和 /etc/shadow 只能root看,但是用户可以修改自己的密码,就是此原因
    SGID
    Sticky Bit(SBIT):仅针对目录
    file   文件名:查看文件所属类型
    5.搜索文件
    先用whereis 和locate,在数据库搜索,linux系统会将所有文件放在一个数据库文件中,实际很少用find ,因为它是在硬盘中进行搜索,速度慢,消耗硬盘空间
    which:-a 找出所有的执行文件
    whereis :-b 只找二进制文件 -s 只找源文件 如:whereis passwd
    locate:locate 文件名 ,缺点:需要数据库更新,新增的不能找到
    find:find 路径 条件 动作

    例如:
    (1)24小时内更改过内容: find / -mtime 0 (0指当前时间往前推一天) 若是3,则是前3-4之间那一天
    (2)比哪个文件新:-newer
    (3)属于用户/不属于 -user %% 或者 -nouser
    (4)查找文件名为: -name  '*aaa*' 类型用 -type f(s,b,l,c,p)
    (5)查找大于多少: +size 1000k
    (6)查找后执行: find / -user yuanyuan -name b -type f exec ls -l {} ( exec 后为执行命令,{}表示查找的内容,必须以结尾)


  • 相关阅读:
    避免Eclipse经常出现Out Of Memory
    java 判断类和实例的关系(instanceof,isInstance,isAssignableFrom)
    Tuscany SCA Core实现的SPI机制
    ubuntu下压缩和解压缩的命令用法
    eclipse 中引用其他项目及项目打包
    Tuscany 源码学习(1)
    Eclipse快捷键大全(转载)
    zz linux下用 SCP 命令进行网络传输
    HZNUACM寒假集训Day5小结 线段树 树状数组
    HZNUACM寒假集训Day1小结 STL 并查集
  • 原文地址:https://www.cnblogs.com/alwayswyy/p/5160066.html
Copyright © 2020-2023  润新知