看了unix环境高级编程第三章,把代码也都自己敲了一遍,另主要讲解了一些IO函数,read/write/fseek/fcntl;这里主要是c函数,比较容易,看多了就熟悉了。对fcntl函数讲解比较到位,它可以得到和改变打开文件的属性(只读,只写等等,注意后面和stat区别),下面记录了自己在学习的时候一些命令及概念,供学习使用:

ls 命令的含义是list显示当前目录中的文件名字。注意不加参数它显示除隐藏文件外的所有文件及目录的名字。

1)ls –a 显示当前目录中的所有文件,包含隐藏文件.

2)ls –l 显示文件及其详细信息。

$ ls -l
total 56
-rwxrw-rw- 1 zcx zcx  1840  8月  6 20:19
alloc.h
-rwxrwxr-x 1 zcx zcx  8078  8月 18 21:48 a.out
-rwxrw-rw- 1 zcx
zcx  4754  7月 31 16:37 apue.h
-rwxrw-rw- 1 zcx zcx  2021  5月 24  2005
error.c
-rw-r--r-- 1 zcx zcx 16394  8月 18 21:48 file.hole
drwxrwxr-x 2
zcx zcx  4096  8月 17 21:50 firstChapter
-rw-rw-r-- 1 zcx zcx   391  8月 18
21:48 holefile3.2.c
-rw-rw-r-- 1 zcx zcx   139  8月 17 21:56 lseek3.1.c

drwxrwxr-x 2 zcx zcx  4096  8月 18 11:15 secondChapter
drwxrwxr-x 2 zcx
zcx  4096  8月 18 21:41 thirdChapter
-rw-rw-r-- 1 zcx zcx   271  8月  1 09:44
ws_fork.c

显示的文件详细信息分别代表什么呢?

total 56 代表当前目录下文件大小的总和为56K(每个目录的大小都按4K算)

drwxr-xr-x 第一个字符有3种情况:“-”表示普通文件,“d”代表目录,“l”代表连接文件,“b”代表设备文件。

后面的9个字符每3个为一组,分别代表文件所有者、文件所有者所在用户组、其它用户对文件拥有的权限。每组中3个字符分别代表读、写、执行的权限,若没有其中的任何一个权限则用“-”表示。执行的权限有两个字符可选“x”代表可执行,“s”代表套接口文件。

紧接着的数字2代表 “aa”这个目录下的目录文件数目(这个数目=隐藏目录数目+普通目录数目)。我们进入“aa”目录用命令 ls
–al (为了看到隐藏文件我们加上-a这个参数).

total 112
drwxrwxr-x 5 zcx zcx  4096  8月 18 21:48 .
drwxrwxr-x 4 zcx
zcx  4096  8月  3 10:18 ..
-rwxrw-rw- 1 zcx zcx  1840  8月  6 20:19 alloc.h

-rwxrwxr-x 1 zcx zcx  8078  8月 18 21:48 a.out
-rwxrw-rw- 1 zcx zcx 
4754  7月 31 16:37 apue.h
-rwxrw-rw- 1 zcx zcx  2021  5月 24  2005 error.c

-rw-r--r-- 1 zcx zcx 16394  8月 18 21:48 file.hole
drwxrwxr-x 2 zcx zcx 
4096  8月 17 21:50 firstChapter
-rw-rw-r-- 1 zcx zcx   391  8月 18 21:48
holefile3.2.c
-rw-r--r-- 1 zcx zcx 12288  8月 18 21:45 .holefile3.2.c.swn

-rw------- 1 zcx zcx 12288  8月 18 11:31 .holefile3.2.c.swo
-rw------- 1
zcx zcx 12288  8月 18 11:31 .holefile3.2.c.swp
-rw------- 1 zcx zcx 12288  8月
18 21:45 .ho.swp
-rw-rw-r-- 1 zcx zcx   139  8月 17 21:56 lseek3.1.c

drwxrwxr-x 2 zcx zcx  4096  8月 18 11:15 secondChapter
drwxrwxr-x 2 zcx
zcx  4096  8月 18 21:41 thirdChapter
-rw-rw-r-- 1 zcx zcx   271  8月  1 09:44
ws_fork.c
后面的zcx zcx 分布为用户名
和组用户名,接着后面的数据为文件或目录大小,再接着就是最后修改时间等。

linux重定向

看了./a.out 2 2>>temp.foo
这个命令,网上查了讲的事重定向问题,这个命令的意思把标准错误信息重定向到temp.foo(0文件描述符代表标准输入,1代表标准输出,2代表标准错误信息).

这里推荐一个网址,作者讲的比较详细,我就不啰唆了:http://www.cnblogs.com/wawlian/archive/2012/12/16/2820351.html

unix环境高级编程基础知识之第二篇(3)的更多相关文章

  1. unix环境高级编程基础知识之第一篇

    陆陆续续看完了圣经第一章,熟悉了unix的整个编程流程,c语言的用处在这里得到伸张. 从unix的体系结构,原来操作系统包括内核及一些其他软件,我们常常误称为linux内核为操作系统,这俨然成为一种共 ...

  2. unix环境高级编程基础知识之第四章

    1.从当前用户转到root用户:直接输入su命令,然后输入root密码,如果之前没有设置root命令密码会登陆不成功,这里需要命令sudo passwd命令设置密码,然后按照上面输入就成:从root命 ...

  3. Unix环境高级编程——守护进程记录总结(从基础到实现)

    一.概念及其特征 守护进程是系统中生存期较长的一种进程,常常在系统引导装入时启动,在系统关闭时终止,没有控制终端,在后台运行.守护进程脱离于终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程 ...

  4. Unix 环境高级编程

    UNIX 环境高级编程 本书描述了UNIX系统的程序设计接口--系统调用接口和标准C库提供的很多函数. 与大多数操作系统一样,Unix为程序员运行提供了大量的服务--打开文件,读文件,启动一个新程序, ...

  5. 《UNIX环境高级编程》(APUE) 笔记系列

    本系列笔记主要是对于 <UNIX环境高级编程>(APUE) 各章节内容 概念性的总结 ,不涉及代码解读 . 目录 : 第一章 UNIX基础知识 第二章 UNIX标准及实现 第三章 文件I/ ...

  6. (十三) [终篇] 一起学 Unix 环境高级编程 (APUE) 之 网络 IPC:套接字

    . . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...

  7. (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO

    . . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...

  8. (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境

    . . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...

  9. (六) 一起学 Unix 环境高级编程 (APUE) 之 进程控制

    . . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...

随机推荐

  1. 3、软件评测师要阅读的书籍 - IT软件人员书籍系列文章

    软件评测师在项目组的作用也是非常大的.微软的做法是一个软件工程师搭配两个软件评测师,这样能够减少软件系统存在的问题.但是,笔者发现,软件评测在这些年的发展还是比较缓慢的,除了人力进行的测试外,就是软件 ...

  2. storm实战:基于storm,kafka,mysql的实时统计系统

    公司对客户开放多个系统,运营人员想要了解客户使用各个系统的情况,在此之前,数据平台团队已经建设好了统一的Kafka消息通道. 为了保证架构能够满足业务可能的扩张后的性能要求,选用storm来处理各个应 ...

  3. 《java JDK7 学习笔记》课后练习题3

    1.如果有以下的程序代码:int number;System.out.println(number);以下描述何者正确?A.执行时显示0B.执行时显示随机数字C.执行时出现错误D.编译失败 2.如果有 ...

  4. vs2013外接程序”VMDebugger”加载异常处理

    cmd → regedit HKEY_LOCAL_MACHINE → OFTWARE → Wow6432Node → Microsoft  → VisualStudio → 12.0 → AddIns ...

  5. C++/CLI——读书笔记《Visual C++/CLI从入门到精通》 第Ⅱ部分

    =================================版权声明================================= 版权声明:本文为博主原创文章 未经许可不得转载  请通过右 ...

  6. iOS实现自定义进度条、拖动条效果,可多个

    项目用到的一个场景,需要设置一个周期内不同时间时的数值 比如要设置10秒内,每一秒的大小,通过10个拖动条来设置实现,只需拖动到想要的数值即可, 这里周期10秒和每个拖动条的最大值都是可以自己定义的. ...

  7. LeetCode#227.Basic Calculator II

    题目 Implement a basic calculator to evaluate a simple expression string. The expression string contai ...

  8. svn报错

    错误一:org.apache.subversion.javahl.ClientException: E155004: There are unfinished work items in 'D:\xa ...

  9. JQuery入门——进度条

    越来越觉得常规javascript已经跟不上节奏了,打算学点进阶的,从JQuery学起. JQuery是一个Javascript库,可以从JQuery.com下载,放到本地,用 <script ...

  10. PowerDesigner新装后的设置

    1.设置name不自动等于code 1.1菜单栏选择tools,选择general Options,打开如图1所示界面 1.2选择Dialog,勾掉红框中复选框,点OK即可