随笔分类 - Linux
摘要:1、预编译 gcc -E hello.c -o hello.i //stop after the stage of preprocessing stage, do not run the compiler proper 2、编译 gcc -S hello.c -o hello.s //stop af
阅读全文
摘要:main函数 main函数 C程序总是从main函数开始执行,main函数的原型: 内核在执行C程序(exec函数调用)时,在调用main函数前先调用一个特殊的启动程序,启动程序从内核取得命令行参数和环境变量,为调用main函数做好准备。 进程终止 进程终止 正常终止: (1)从main返回 启动程
阅读全文
摘要:口令文件 口令文件 UNIX系统口令文件是etc/passwd,包含了图1所示的各字段,这些字段包含在<pwd.h>中定义的passwd结构中。 图1 各系统etc/passwd文件中的字段 Ubuntu系统的passwd结构(在/usr/include/pwd.h中)如下: 图2 Ubuntu中的
阅读全文
摘要:文件系统概览 文件系统概览 目前,正在使用的UNIX文件系统有多种实现: 传统的UNIX文件系统(UFS)、读写DOS格式软盘的文件系统(PCFS)、读CD的文件系统(HSFS)。 1、UFS文件系统 本文讨论UFS文件系统,磁盘、分区和文件系统的关系见图1。 图1 磁盘、分区和文件系统 超级块存储
阅读全文
摘要:提高复用性 提高复用性 在build目录下,保存公用部分make.rule (1)绝对路径 用ROOT变量保存项目根目录 (2)增加控制变量 EXE/LIB/ (3)头文件查找目录 gcc 的-I(i的大写)选项,用INC_DIRS保存 (4)链接库查找 gcc的-L选项,指定搜索目录 gcc的-l
阅读全文
摘要:学习资料 学习资料 本文主要参考资料:驾驭Makefile(李云).pdf Complicated项目 Complicated项目 需求: (1)object文件放到objs目录下 (2)可执行文件放到exes目录下 (3)增加头文件依赖 自动生成依赖关系 自动生成依赖关系 (1)先用编译器为每一个
阅读全文
摘要:学习资料 学习资料 本文主要参考资料:驾驭Makefile(李云).pdf 原理 原理 (1)最基本的语法 targets: prerequisites command targets是目标,prerequisites是先决条件,目标依赖于先决条件。 command是生成目标的命令。 这一整个形式就
阅读全文
摘要:一、文件信息结构 图1 文件信息结构stat 与文件有关的信息结构,如图1所示,结构的实际定义可能随具体实现会有所不同,但这是基本形式。本节中主要涉及的有st_mode、st_uid和st_gid成员。 图2 获取stat函数 获取文件信息结构stat,有4个stat函数。 stat通过pathna
阅读全文
摘要:一、打开文件的内核数据结构 内核使用3种数据结构表示打开文件:进程表项、文件表项、V节点表项。 如图1所示: 图1. 打开文件的内核数据结构 进程表项(process table entry) 进程表项(process table entry) 每个进程在进程表中都有一个记录项,记录项中包含一张打开
阅读全文
摘要:怎样编写一个 Shell 脚本 怎样编写一个 Shell 脚本 脚本文件格式 脚本文件格式 #!字符序列是一种特殊的结构叫做 shebang。 这个 shebang 被用来告诉操作系统将执行此脚本所用的解释器的名字。 每个 shell 脚本都应该把这一文本行 作为它的第一行。 可执行权限 可执行权限
阅读全文
摘要:grep【global regular expression print】 print lines matching a pattern regex 是指一个正则表达式 grep选项列表: -i 忽略大小写--ignore-case -v invert match -c 打印匹配的数量,而不是文本行
阅读全文
摘要:locate locate locate 执行快速的路径名数据库搜索,输出每个与指定子字符串相匹配的路径名。 locate bin/zip locate 命令的数据库是updatedb命令创建的。 find find locate只能依据文件名查找文件,而find命令能基于各种各样的属性 搜索一个给
阅读全文
摘要:ps命令 ps x 加上 "x" 选项(注意没有开头的 "-" 字符),告诉 ps 命令,展示所有进程,不管它们由什么 终端(如果有的话)控制。 在 TTY 一栏中出现的 "?" ,表示没有控制终端。使用这个 "x" 选项,可以 看到我们所拥有的每个进程的信息。 进程状态 ps aux 这个选项组合
阅读全文
摘要:用户帐户 定义在/etc/passwd 文件里面,用户组定义在/etc/group 文件里面。 /etc/shadow 包含了关于用户密码的信息 文件属性: 权限属性: 更改文件模式——chmod 只有文件的所有者或者超级用户才 能更改文件或目录的模式 chmod 命令支持两种不同的方法来改变文件模
阅读全文
摘要:Ctrl-a 移动光标到行首。 Ctrl-e 移动光标到行尾。 Ctrl-f 光标前移一个字符;和右箭头作用一样。 Ctrl-b 光标后移一个字符;和左箭头作用一样。 Alt-f 光标前移一个字。【terminal->Edit->Keyboard Shortcuts->取消Enable menu a
阅读全文
摘要:字符展开: echo * 路径名展开: echo D* 隐藏文件路径名展开 ls -d .[!.]?* 波浪线展开: echo ~ 算术表达式展开: 花括号展开: 最常见的应用,创建一系列的文件或目录列表。 参数展开: echo $USER printenv | less 命令展开: 把一个命令的输
阅读全文
摘要:> 重定向标准输出 > ls-output.txt 清空或者创建一个新文件夹 >> 重定向结果追加到文件内容后面 2> 重定向标准错误 &> 来重定向标准输出和错误 【旧版本:ls -l /bin/usr > ls-output.txt 2>&1】 2> /dev/null 处理不需要的输出 2>
阅读全文
摘要:type command 显示命令的类别 which command 显示可执行程序的位置 type command 显示命令的类别 which command 显示可执行程序的位置 help - 得到 shell 内建命令的帮助文档 --help - 显示用法信息 man - 显示程序手册页 【m
阅读全文
摘要:cp – Copy files and directories mv – Move/rename files and directories mkdir – Create directories rm – Remove files and directories ln – Create hard a
阅读全文
摘要:ls – List directory contents file – Determine file type less – View file contents ls – List directory contents file – Determine file type less – View
阅读全文