• Linux 文件基础


    Linux 文件基础

    1. man 命令使用

    man man  //查看man 命令的用法
    1   可执行程序或 shell 命令
    2  	系统调用(内核提供的函数)
    3 	库调用(程序库中的函数)
    4   特殊文件(通常位于 /dev)  设备,例:麦克风
    5	文件格式和规范,如 /etc/passwd
    6	游戏
    7	杂项(包括宏包和规范,如 man(7)groff(7))
    8	系统管理命令(通常只针对    root用户)
    9	内核例程 [非标准一个手册 页面 包含若干个小节。
         小节名称通常包括  NAME,   概述(SYNOPSIS),   配置(CONFIGURATION),   描述(DESCRIPTION),
           选项(OPTIONS),     退出状态(EXIT STATUS),     返回值(RETURN VALUE),     错误(ERRORS),
           环境(ENVIRONMENT), 文件(FILES), 版本(VERSIONS),  符合标准(CONFORMING TO),(NOTES),
           缺陷(BUGS), 示例(EXAMPLE), 作者(AUTHORS), 和 亦见(SEE ALSO).
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    二、文件基本概念

    Linux 一切皆文件

    cd /dev  //设备文件存放位置
    
    • 1

    1.文件类型分类

    bcd-lps //总共七种

    b 块设备,例如:硬盘
    c 字符设备文件  例如:鼠标键盘
    d 目录文件
    - 普通文件
    l 软连接文件,类似windows 下的快捷方式
    p 有名管道文件,实现进程间通信
    s 套接字文件(实现本地通信)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    3.重定向

    //标准输出重定向

    echo "hello world" 1>log.txt // 把输出到显示器的字符串输出到文件中,没有文件创造文件;先清除原有的,再写入
    echo "hello world" >> log.txt //追加写入
    
    • 1
    • 2

    //出错重定向

    command 2>file // 将命令的结果(出错信息)存入文件
    cat log.txt // cat 程序找log.txt 文件再输出
    cat < log.txt //log.txt 把内容给cat ,文件到程序的过程
    
    • 1
    • 2
    • 3

    4.程序实现过程

    4G内存,用户空间:0-3G ; 内核空间:3G- 4G;

    #include
    main()
    {
    	printf("hello world");//
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    strace ./a.out > log.txt //把执行文件的过程写到文件中
    
    • 1

    (1)应用层使用标准IO ,内核层使用文件IO
    (2)POSIX 标准 可移植操作系统接口;
    (3)C语言标准函数库存放位置 /usr/include

    limits.h//
    INT_MAX //int 型数据的最大值
    bzero();//数据初始化和memset()类似
    bzero(buf,sizeof(buf));
    
    • 1
    • 2
    • 3
    • 4

    5.ctags 扫描指定的源文件,找出其中所包含的语法元素,并将找到的相关内容记录下来。

    vim -t +宏名/结构体名/类名/函数名 进入/usr/include/源码的tags标签中查找对应的数据

  • 相关阅读:
    外贸人必备的跨境电商常见专有名词!
    python毕业设计作品基于django框架新闻信息管理系统毕设成品(2)网站功能
    hbase 集成 phoenix 实现 sql 化
    windows下部署flask: apache+mod_wsgi问题汇总
    Win11如何开启移动中心页面的操作方法教学
    R-FCN: Object Detection via Region-based Fully Convolutional Networks
    并发之CAS
    倒数 3 天|RocketMQ 能力全景图即将发布,定义下一代消息队列未来方向
    Mybatis Plus如何使用自定义方法实现分页呢?
    Sui与数据平台ZettaBlock达成合作,为其公测提供数据
  • 原文地址:https://blog.csdn.net/jun8086/article/details/127702390