开发者

Linux目录与文件操作方式

目录
  • 一、linux目录
    • 1.Linux目录结构
    • 2.根目录
    • 3.常见的子目录与作用
  • 二、文件操作
    • 1.文件内容操作命令
      • 1.1 cat 命令 - 查看文件内容
      • 1.2 more 命令 - 查看文件内容
      • 1.3 less 命令 - 查看文件内容
      • 1.4 head、tail 命令 - 查找文件内容
      • 1.6 grep 命令 - 检索和过滤文件内容
    • 2.压缩、解压缩命令
      • 2.1 gzip、bzip2 - 压缩命令
      • 2.2 gunzip、bunzip2 - 解压缩命令
      • 2.3 tar 命令 - 归档命令
    • 3.vi 命令 - 文本编辑器
      • 3.1 常用的文本编辑器及其作用
      • 3.2 vi编辑器的工作模式
      • 3.3 命令模式的基本操作
      • 3.4 末行模式的基本操作
  • 总结

    一、Linux目录

    1.Linux目录结构

    • Linux目录结构是树形目录结构。

    Linux目录与文件操作方式

    2.根目录

    • 是所有分区、目录、文件的起始起点。
    • 整个树形结构中,使用独立的一个"/"表示

    3.常见的子目录与作用

    目录作用
    /root管理员用户root的宿主(家)目录
    /home普通用户的编程客栈宿主(家)目录
    /boot存放系统内核、启动文件
    /dev存放设备文件(硬盘、光盘等)
    /etc存放配置文件
    /bin存放所有用户可执行的命令文件
    /sbin存放管理员可执行的命令文件
    /usr存放系统用户工具和应用程序
    /var存放可变化的文件、日志等文件
    /lib存放系统程序的的动态链接共享库文件(依赖等)
    /media存放可卸载的的媒介挂载点(u盘、光驱等)
    /proc存放映射系统信息的文件
    /mnt存放临时挂载储存设备
    /opt第三方应用程序安装的目录
    /tmp存放系统临时文件

    二、文件操作

    1.文件内容操作命令

    1.1 cat 命令 - 查看文件内容

    • 用于直接显示出整个文件的内容

    ps:cat命令只能读,不能写入,全量展示。

    cat "选项" "目标文件"

    例:

    cat /etc/sysconfig/network
    cat hello.txt
    常用选项解释
    -n对所有输出的行数进行编号
    -b对输出的空白行之外的行数进行编号
    -s对所有连续的空行替换为一个空行

    1.2 more 命令 - 查看文件内容

    • 用于以全屏方式分页显示文件内容

    more "选项" "目标文件"

    键盘操作解释
    Enter向下逐行滚动
    Space向下翻页
    b向上翻页
    q推出

    ps:下翻到最后一页后会自动退出

    结合管道操作使用时(例如ls -R /etc | more )无法向上翻页

    1.3 less 命令 - 查看文件内容

    • 与more命令相同,但扩展功能更多。(更常用)

    less "选项" "目标文件"

    键盘操作解释
    Page Up向上翻页
    Page Down向下翻页
    "↑"方向键向上逐行滚动
    "↓"方向键向下逐行滚动
    "/"键查找内容
    n下一个内容
    N上一个内容

    其他功能与more命令基本一致

    ps:下翻到最后一页时不会自动推出

    结合管道操作可以向上翻页

    1.4 head、tail 命令 - 查找文件内容

    1.4.1 head 命令

    • 用于查看文件开头的一部分内容

    head -n "行数" "目标文件"

    1.4.2 tail 命令
    • 用于查看文件结尾的少部分内容

    tail "选项" "目标文件"

    选项解释
    -nn=尾行数(例:tail -2 xxx)查看结尾n行的内容
    -f或-nf ,n=尾行数跟踪查看文件尾部动态更新的尾行内容

    例:

    tail -5f /var/log/messages

    跟踪查看messages文件内结尾5行的动态更新内容

    1.5 wc 命令 - 统计文件内容

    • 用于统计文件中的单词数量、行数等信息

    wc "选项" "目标文件"

    常用选项解释
    -l统计行数
    -w统计单词个数
    -c统计字节数

    ps:使用wc "文件"时(不带选项),默认同时使用 -l -w -c (-lwc)选项

    1.6 grep 命令 - 检索和过滤文件内容

    • 在文件中查找并显示包含指定字符串的行

    grep "选项" "查找条件" "目标文件"

    选项解释
    -i查找时不区分大小写
    -v显示不包含匹配本文的所有行(反向查询、反向匹配)
    -n显示匹配行及行号
    -c只输出匹配到的总行数(非匹配目标的个数)
    -e实现多个查找条件的匹配(逻辑or关系)
    -E支持使用扩展正则表达式,相当于egrep命令
    -o只输出匹配的文字内容
    查找条件解释
    "n"查找含有n的行
    "^n"匹配以n开头的行
    "n$"匹配以n结尾的javascript
    "^$"匹配空行

    2.压缩、解压缩命令

    2.1 gzip、bzip2 - 压缩命令

    制作压缩文件:

    • gzip "选项" "目标文件"
    • bzip2 "选项" "目标文件"
    常用选项解释
    -n编程客栈n=1~9中的数字(例:gzip -9 xxx)设置压缩级别(压缩比)
    -d例:bzip2 -d xxx用于解压缩文件

    ps:压缩后源文件会消失

    2.2 gunzip、bunzip2 - 解压缩命令

    用于解压缩文件

    • gunzip "选项" "目标文件"
    • bunzip2 "选项" "目标文件"

    ps:gunzip 等同于 gzip -d 、bunzip2 等同于 bzip2 -d

    解压后的源压缩文件会消失

    2.3 tar 命令 - 归档命令

    用于制作、释放归档文件

    • tar "选项" "归档文件名" "源文件、目录"
    • tar "选项" "归档文件名" -C "目标目录(绝对路径)"
    常用选项解释
    -c创建.tar格式的包文件
    -x解开.tar格式的包文件
    -f表示使用归档文件
    -v输出详细信息
    -j调用 bzip2 程序进行解压或压缩
    -z调用 gzip 成勋进行解压或压缩
    -C指定目标目录(绝对路径)

    例:

    tar -cjvf documents.tar.bz2 www.devze.com-C /home/user/documents

    调用bzip2程序将/home/user/目录下的documents文件打包压缩成一个名为documents.tar.bz2的归档文件到当前目录并输出详细信息

    tar -xzvf documents.tar.gz. -C /home/user/backup

    调用gzip程序将当前目录下的documents.tar.gz归档文件解压到/home/user/backup目录下并输出详细信息

    3.vi 命令 - 文本编辑器

    3.1 常用的文本编辑器及其作用

    3.1.1 Linux中最常用的文本编辑器

    • vi文本编辑器:类Unix操作系统的默认文本编辑器
    • vim(Vi IMproved):vim是vi文本编辑器的增强版本

    3.1.2 文本编辑器的作用

    • 创建或修改文本文件
    • 维护Linux系统中的各种配置文件

    3.2 vi编辑器的工作模式

    • 三种工作模式:命令模式、输入模式、末行模式
    • 不同模式间的切换:

    Linux目录与文件操作方式

    3.3 命令模式的基本操作

    3.3.1 光标移动

    键盘操作解释
    ↑、↓、←、→上、下、左、右
    Page Down 或 Ctrl+F向下翻页
    Page Up 或 Ctrl+B向上翻页
    Home 或 ^ 或 0跳转至行首
    End 或 &跳转至行尾
    1G 或 gg跳转至首行
    G跳转至末行
    "#"G跳转至#行
    :set nu显示行号
    :set nonu取消显示行号

    3.3.2 复制、粘贴、删除

    键盘操作解释
    x 或 Delete删除光标处的单个字符
    dd删除当前光标所在行
    #dd删除从光标所在行开始的#行内容
    d^删除当前光标之前到行首的所有字符
    d$删除当前光标处到行尾的所有字符
    yy复制光标所在行整行的内容到剪贴板
    #yy复制从光标所在行开始的#行内容
    p将缓冲区中的内容粘贴到光标位置处之后
    P(大写)粘贴到光标位置处之前

    3.3.3 基本操作

    • 文件内容查找:

    键盘操作

    解释

    /word

    从上而下在文件中查找字符串“word'

    ?word

    从下而上在文件中查找字符串"word

    n

    定位下一个匹配的被查找字符串

    N

    定位上一个匹配的被查找字符串

    • 撤销、编辑及保存退出
    键盘操作解释
    u撤回一次操作;重复u键,恢复多步操作
    U(大写)用于取消对当前行所做的所有编辑
    ZZ(大写)保存当前的文件内容并退出vi编辑器

    3.4 末行模式的基本操作

    3.4.1 保存文件及退出vi编辑器

    命令功能
    :w保存内容
    :w /root/newfile另存为新文件
    :q未修改退出
    :q!放弃对文件的修改,并退出vi
    :wq 或 x保存修改的内容并退出

    3.4.2 文件内容替换

    命令功能
    :s /old/new将当前行中查找到的第一个字符“old” 串替换为“new”
    :s /old/new/g将当前行中查找到的所有字符串“old”替换为“new'
    :#1,#2 s/old/new/g将行号“#1,#2”范围内的所有字符串“old”替换为“phpnew
    :% s/old/new/g将整个文件范围内的所有字符串“old”替换为“new
    :s /old/new/c提示用户对每个替换动作进行确认

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新运维

    运维排行榜