zoukankan      html  css  js  c++  java
  • Linux文件操作

    使用命令

    • 命令格式:

        命令 [选项] [参数]

      []表示可选的

    • 示例:

        ls -l /etc

    常识命令

    • ls:查看指定目录的内容,不指定目录时查看当前目录下的内容

      选项说明
      -l 列表显示,会显示更多信息
      -a 显示所有文件,包括隐藏文件(以.开头的文件)
      -h 人性化的显示大小,如:K/M/G
      • -l选项显示结果说明:

        类型及权限 | 引用数 | 用户 | 用户组 | 大小 | 月 | 日 | 年或时间 | 文件名
      • 文件类型:

      符号类型
      - 普通文件
      d 目录文件
      l 链接文件
      c 字符设备文件
      b 块设备文件
      s 套接字文件
      p 管道文件
    • cd:切换工作目录

      符号说明
      . 当前目录
      .. 上一级目录
      - 上次切换之前的目录
      ~ 当前用户的家目录
      / 表示根目录
      1. 不指定目标地址时,默认切换到家目录

      2. 凡是以'/'开头的目录都是绝对目录

      3. 以'.'或'..'开头的目录都是相对目录

    • pwd:查看当前工作目录

    • alias:给命令起别名,如:ll、la、l

    • unalias:取消命令别名

    查看文件

    • 相关命令

      命令说明
      cat 从上到下,显示文件全部内容
      tac 从下到上,显示文件全部内容
      head 查看开头指定行数的内容,默认10行,如:head -20 filename
      tail 查看末尾指定行数的内容,默认10行,如:tail -20 filename
      nl 功能同cat,但是会多显示行号
      wc 统计内容:行数 | 单词数 | 字符数 | 文件名
      more 一点一点查看内容
      less 一点一点查看内容
    • more/less使用说明

      • 显示一屏就停止

      • q退出查看

      • enter下翻一行

      • 空格下翻一屏

      • more查看结束会自动退出,less不会自动退出

      • less可以使用上下按钮上下翻看一行,more不可以

      • 以后经常结合管道使用,如:ls /etc | more

    文件及目录

    • 相关命令

      命令说明
      touch 新建文件,可以一次性创建多个
      rm 删除文件或目录,删除目录时需要添加'-r'选项
      cp 拷贝文件或目录,拷贝目录时需要添加'-r'选项
      mv 移动文件或文件
      mkdir 新建目录,可以一次性创建多个
      rmdir 删除目录,但是只能删除空目录
    • 使用说明:

      • -r:删除拷贝目录时需要添加,表示递归操作

      • -f:表示强制操作,没有提示信息

      • *:表示模糊匹配,如:rm *.txt,表示删除所有的txt文件

      • -p:创建目录时若需要创建中间目录,需要添加此选项

    用户及用户组

    • 相关命令

      命令说明
      whoami 查看当前登录的用户名
      useradd 新加用户,-d指定家目录,-m创建家目录,-s指定shell解析器
      userdel 删除用户,-r可以删除用户相关的目录(家目录、邮件目录)
      passwd 设置指定用户密码,不指定用户时设置当前用户的密码
      su - 切换用户,一定要加上'-',加上它不但能够切换用户,而且还可以切换环境,不指定切换的用户时,默认切换到root(需要提前设置一下密码)
        以指定用户(root)身份执行命令
      visudo 专门用来编辑/etc/sudoers文件的命令,需要添加相关配置才可以使用sudo执行命令,如:test ALL=(ALL:ALL) ALL。最好先修改系统默认文本编辑器(sudo update-alternatives --config editor)
      groupadd 新建用户组
      groupdel 删除用户组
      gpasswd 向指定用户组添加/删除指定用户,如:gpasswd -a/-d user group
      groups 查看指定用户的组信息
      chsh 修改指定用户的shell解析器,如:sudo chsh test -s /usr/sbin/nologin(禁止登录)
      chgrp 修改指定文件所属组,如:sudo chgrp test 33.py
      chown 修改文件所有者[及所属组],如:sudo chown jerry[:jerry] 33.py, -R表示递归修改
    • 涉及文件

      • /etc/passwd:系统中的用户信息

      • /etc/group:系统中的用户组信息

      • /etc/shadow:系统用户的密码信息

    • 涉及名词:

      • uid:用户唯一身份标识

      • gid:用户组唯一身份标识

    文件权限

    • 说明:在linux下,所有的文件都涉及权限,分为三组:所有者、所属组、其他用户

    • 权限:所有权限可以分为:可读(r)、可写(w)、可执行(x),-表示没有此权限

    • 原理:ls -l的结果,三个一组,刚好分为三组,对应:所有者、所属组、其他用户

    • 修改权限:chmod,格式:chmod [身份] [操作] [权限] 文件

      选项说明
      身份  
      u 所有者(user)
      g 所属组(group)
      o 其他人(other)
      操作  
      + 添加
      - 删除
      = 设置
      权限  
      r
      w
      x 执行
      • 示例:sudo chmod o+x 33.py,给33.py文件的其他用户添加可执行权限

    • 本质:使用一组(3位)8进制的数来表示权限, 如:0755,展开如下

        转换为二进制:0755 => 111 101 101
      对应三个身份:所有者 所属组 其他人
      每一组的权限:都包括读、写、执行,1表示拥有,0表示没有
      示例解析:所有者拥有可读可写可执行权限,所属组可读可执行,其他人可读可执行
    • 简化:sudo chmod 0755 33.py,递归操作需要添加'-R'选项

    链接文件

    • 命令: ln

    • 作用:创建一个文件或目录的链接

    • 格式:ln [-s] 原文件 新文件

    • 查看:ls -l结果集中的第一列的第一部分就是文件类型,l就是链接

    • 硬链接与软链接

        硬链接:创建时不加-s选项创建的就是硬链接,相当于给文件多起了个名字,极少用到
      1.不能给目录创建
      2.不能跨文件系统
      软链接:创建时添加-s选项创建的就是软链接,相当于windows中的快捷方式,比较常用
      1.可以给目录创建
      2.可以跨文件系统

  • 相关阅读:
    团队-团队编程项目爬取豆瓣电影top250-代码设计规范
    团队编程项目作业2-团队编程项目开发环境搭建过程
    团队编程项目作业2-团队编程项目设计文档
    《结对-结对编项目作业名称-开发环境搭建过程》
    《20170912-构建之法:现代软件工程-阅读笔记》
    结对编程项目作业2-英文词频检测程序-设计文档
    个人-GIT使用方法
    阅读任务-阅读提问
    《团队-Python 爬取豆瓣电影top250-成员简介及分工》
    团队-爬取豆瓣电影TOP250-需求分析
  • 原文地址:https://www.cnblogs.com/542684416-qq/p/9882326.html
Copyright © 2011-2022 走看看