Linux文件系统及主要命令

一.文件目录基本结构

linux文件系统是多级树形结构。典型linux文件系统大致的结构如下图:
Linux文件系统及主要命令_第1张图片
Linux系统的根目录表示符号为”/”。多级目录的各级目录也用”/”分割,组成一个完整的路径名。例如,当用户首次登录系统时当前工作目录为该用户的主目录,一般为/home/用户账号名目录。当前目录表示符号为”.”,上级目录表示符号为”..”。

二.常用的目录操作命令

  • 显示当前工作目录全名
    pwd
  • 改变当前工作目录
    cd [路径名]
  • 建立新目录
    mkdir 路径名
  • 删除一个空目录
    rmdir 路径名
  • 列出目录或文件属性信息
    -ls [选项] [路径名|文件名]

三.常用文件操作命令

  • 串联显示文本文件内容
    cat [文件名1文件名2 …]
    例如,demo1 文件中仅有一行文字”Ok“,demo2文件中仅有一行文字”hello”。显示demo1和demo2两文件的内容:
    $ cat demo1 demo2
    Ok
    hello
    可以利用该命令将多个文件合并。例如,将文件demo1和demo2 合并为demo
    $ cat demo1 demo2 > demo
  • 拷贝文件
    cp [操作] 源文件名 目标文件名
    可以借助统配符递归的拷贝整个目录。例如,将sub子目录中文件全部拷贝到当前目录中:
    $ cp -rv ./sub/. ./
  • 文件换名或文件移动
    mv [操作] 旧文件名 新文件名
  • 删除文件
    rm [操作] 文件名
  • 对文件内容进行排序
    例如,按字典升序排序列出文件demo的内容:
    $ sort demo
    hello
    Ok
  • 在文件中查找给定的字符串或正则表达式
    grep [操作] 要查找的字符串或正则表达式 文件名
    例如,要在当前目录之下递归的查找哪些文件中哪一行上有”hello”一词,可输入命令:
    $ grep -r -n “hello” ./
    ./sub/demo:2:hello
    ./sub/demo1:1:hello
    ./hello.c:5:hello
    grep查出在子目录sub的demo文件的第2行和当前目录的hello.c文件的第5行有”hello”一词
  • 按类型查找文件
    find [路径名] [类型] 文件名
    例如,要查找当前目录下是否有叫”demo”的文件:
    $ find ./ -name demo
    ./sub/demo find在当前目录的子目录sub中找到有一个叫”demo”的文件。
  • 文件归档和恢复
    tar [操作] 归档文件名[源文件名]
    例如,将当前目录中的子目录sub压缩归档为文件sub.tar:
    $ tar -cvzf sub.tar sub
    sub/
    sub/demo
    sub/demo1
    sub/demo2
    将文件sub.tar解压恢复到当前目录中:
    $ tar -xvzf sub.tar sub
    sub/demo
    sub/demo1
    sub/demo2
  • 创建或编辑文本文件
    vi [文件名]
    vi编辑器为全屏幕文本键盘操作编辑器,无鼠标编辑功能。具有命令态和编辑两种编辑状态。初始启动时为命令态,此时键入的所有字符都被解释为vi子命令,无字符图形显示,仅有命令效果。 常用vi子命令:
    1. i 向屏幕缓冲区当前光标前插入文本。此时vi状态自动切换为编辑状态其后键入的字母数字都可以显示在屏幕上,同时键盘右边编辑小键盘全部激活,可利用它们定位光标位置进行屏幕编辑。输入Esc键将结束插入编辑状态返回命令状态。
    2. a 向屏幕缓冲区当前光标后插入文本。其他功能与i命令相同。
    3 : 进入提示行子命令。此时光标进入屏幕最下行一冒号后,准备接受文件操作子命令。
       常用文件操作子命令:
       w [文件名]
       如果vi启动时指定文件名,则可以不要[文件名],编辑的文本将写入启动时指定文件名,否则写入w命令指定的文件。
       r [文件名]
       将r子命令指定的文件内容读入屏幕编辑缓冲区。
       q或q!
       退出vi编辑命令。如果带有惊叹号则不保存当前编辑内容强行退出。

文件属性

文件的属性是对文件进行管理的一组控制信息。常见文件属性有:

  • 文件类型
    linux中文件被划分为3种基本类型:普通文件(代表符号-)、目录文件(代表符号d)、设备文件(块设备代表符号b,字符设备代表符号c)

  • 文件权限
    linux 中每个文件都具有3种用户权限和3种操作权限。 用户权限有:文件主权限(owner)、同组用户权限(group)、其他用户权限(other) 操作权限有:读文件权限r、写文件权限w、执行文件权限x

  • 文件的链接数
    linux中文件可以通过使用ln命令给文件起多个别名,来共享一个文件。共享次数称为链接计数,对该文件的删除仅当链接计数为0时才进行,否则仅对该链接计数值减1。

  • 所属文件主账号
  • 所属用户组号
  • 文件长度
  • 文件创建或修改的日期和时间
  • 文件名
    可以从ls –l 命令的输出中看到这些文件属性的信息。例如:
    $ls -l
    drwxr-xr-x    2    root root 1024 Aug 18 02:50 bin
    -rw-r—r–    1    root roor 849 Aug 18 03:00 junk
      以上列出的第一行文件信息表示该文件为目录文件,文件主权限为可读可写可执行,同组用户权限为可读可执行,其他用户权限为可读可执行,文件链接计数为2,文件主是root,,文件属于root用户组,文件长度为1024字节,文件建立日期为8月18日2点50分,文件名为bin
      第二行文件信息表示该文件为普通文件,文件主权限为可读可写不可执行,同组用户权限为只读不可写不可执行,其他用户权限为只读不可写不可执行,文件链接计数为1,文件主是root,,文件属于root用户组,文件长度为849字节,建立日期为8月18日3点00分,文件名为junk。
  • 文件的操作权限属性可以用chmod来修改。chmod的第一种语法为:
    chomd {a,u,g,o} [+,-,=] {r,w,x} 文件名
    这里,a,u,g,o分别代表所有用户,文件主,文件同组者,其他用户。
    +,-,= 分别代表添加、删除、赋予权限。
    r,w,x分别代表可读、可写、可执行。

  • -

你可能感兴趣的:(Linux)