linux对文件的操作

作者: 孙睿888 | 来源:发表于2016-07-26 19:31 被阅读0次

    1 touch 创建空白文件
        -t 指定创建文件的日期,不指定默认当前时间
        touch -t 1412281130 file1 14年12月28号11点30分
    2 复制cp
    复制文件: cp 文件 目录 如 cp file1 /tmp
    复制目录: cp -r  lijie2  /tmp -r递归复制目录树 -f 强制对同名覆盖 -p保留原文件的属性不变
    3 mv 移动 (剪切)重命名
    mv不同目录剪切,相同目录下重命名
    mv file1 /tmp  将当前目录下的file1文件剪切到/tmp目录下
    mv ~/file /tmp 也可以写绝对路径
    mv file2 f3 将file2重命名为f3
    重命名并复制 :mv ~/file2 /tmp/f3 将家目录下的file2剪切到/tmp目录下并改名为f3

    4 rm 删除
    删除文件:不加参数 rm 文件名  如rm file2
    删除目录:rm -rf 目录名   强制删除所有的级联目录
    删除级联的最后一个目录 rm -rf lijie1/lijie2/lijie3 删除lijie3的所有目录和文件
    5 file查看文件的类型
        file + 文件
    6 which 查看某一个命令的路径
    which rm
    7 whereis 寻找特定文件在哪(whereis [-bmsu] 文件或目录名)
    whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。
    whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。whereis 程序还具有搜索源代码、指定备用搜索路径和搜索不寻常项的能力。

    linux文件操作2(locate find ln)

    和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。
    find和locate区别 :find慢 不需要实时更新 搜索的是路径
    find不能用^$
                        locate直接查询数据库 快 需要实时更新 搜索的是路径
                        grep搜索的是文件的内容(相当于关键词搜索)
    8 locate 寻找查找 直接加文件名,不需要正则表达式。因为locate本身搜索文件名的一部分他也会全部出来。所有和文件名有关的均会被搜索到。

    必须以root用户登陆更新数据库 ,否则

    9 find 搜索 查找
    find / (搜索的范围)  -name(按名称搜索) file(搜索的文件名)  -exec rm -rf  {} \;

    -uid 按照用户id查找 user 按照拥有着查找 size 按照文件大小查找
    -group   根据文件所属组寻找文件
    -perm    根据文件权限查找文件
    -size       根据文件大小查找文件
    -type     根据文件类型查找(f-普通文件,c-字符设备文件,b-块设备文件,l-链接文件,d-目录)
    -o           表达式或
    -and       表达式与
    -not        表达式非
    -ok同-exec只是更安全,每次都会询问
     find   -name ap* -o -name may*   查找以ap或may开头的文件
    find   /mnt   -name tom.txt   -ftype vfat   在/mnt下查找名称为tom.txt且文件系统类型为vfat的文件
    find   /mnt   -name t.txt ! -ftype vfat   在/mnt下查找名称为tom.txt且文件系统类型不为vfat的文件
    find   /tmp   -name wa* -type l            在/tmp下查找名为wa开头且类型为符号链接的文件
    find   /home   -mtime   -2                 在/home下查最近两天内改动过的文件
    10 ln为目录或文件创建链接(目录不能创建硬链接)
    链接文件:包括符号链接和硬链接
    硬链接:新建的文件是已经存在的文件的一个别名,当原文件删除时,新建的文件仍然可以使用.
    软链接:也称为符号链接,新建的文件以“路径”的形式来表示另一个文件,和Windows的快捷方式十分相似,新建的软链接可以指向不存在的文件.
    下面详细介绍一下硬链接和软连接之间的区别.
    1.硬链接和原来的文件没有什么区别,而且共享一个 inode 号(文件在文件系统上的唯一标识);而软链接不共享 inode,也可以说是个特殊的 inode,所以和原来的 inode 有区别。
    2.若原文件删除了,则该软连接则不可以访问,而硬连接则是可以的。
    3.由于符号链接的特性,导致其可以跨越磁盘分区,但硬链接不具备这个特性
    硬链接源和链接必须在同一个分区下
    建立软连接:ln -s 源文件 目录/链接文件(红色)
    建立硬链接:ln 源文件 链接文件(黑色)
    分区 相当于房子 而文件系统相当于是家具,存放数据的方式 之后可以将文件或文件夹放进文件系统中

    相关文章

      网友评论

        本文标题:linux对文件的操作

        本文链接:https://www.haomeiwen.com/subject/cganjttx.html