随笔分类 -  Unix/Linux编程

摘要:由于使用Vim时常用ESC键,因此需要将Caps Lock改为ESC以方便操作,尝试过几种方法,最终确定了最有效的。 第一种:在.vimrc中做xmodmap,每次进入vim时做映射,退出vim时复位映射,但这种方式会收到输入法的影响,有时需要重启vim才能生效 第二种:用dconf-editor, 阅读全文
posted @ 2020-06-26 22:06 凉风SK 阅读(3608) 评论(1) 推荐(0)
摘要:函数原型:char *fgets(char *s, int size, FILE *stream); 功能描述:fgets() reads in at most one less than size characters from stream and stores them into the bu 阅读全文
posted @ 2020-06-26 16:49 凉风SK 阅读(722) 评论(0) 推荐(0)
摘要:在vim中,可以直接输入":make"命令进行编译,并且在vim中会显示错误提示,可以分别通过:cl、:cn、:cp、:cfirst、:clast实现列出全部、跳到下一条、返回上一条、跳到第一条、跳到最后一条错误信息的功能。如果想查看完整的错误信息列表,可以通过:copen打开quickfix文件, 阅读全文
posted @ 2020-06-26 10:22 凉风SK 阅读(1164) 评论(0) 推荐(0)
摘要:常用的重定向如who->userlist.txt将who的输出定向到文件userlist.txt,这是如何做到的呢? who的默认输出对象是标准IO中的stdout,文件描述符为1,而重定向所做的事情是将文件描述符1从默认的tty设备文件移开,而重新分配给其他文件,在本例中为userlist.txt 阅读全文
posted @ 2020-06-16 14:35 凉风SK 阅读(227) 评论(0) 推荐(0)
摘要:在本章写远程ls程序rls.c和rlsd.c时,while( msglen = read( sock_id, message, BUFSIZ ) > 0 )导致了严重的错误——客户端收到服务器返回的信息,但什么都不打印。 具体代码如下: /* rls.c - client program of re 阅读全文
posted @ 2020-06-16 11:47 凉风SK 阅读(185) 评论(0) 推荐(0)
摘要:背景:之前用管道连接2个进程时(pipe ls head、pipe who sort...),需要两个管道,但为什么不能用一根管道呢? 一个进程可以从管道的读端口读取另一个进程发来的控制信号,然后再从写端口将结果发送回去啊!解答:这样会导致数组错乱。因为当你从写端口将算出来的结果发送回去后,一般会立 阅读全文
posted @ 2020-06-15 15:40 凉风SK 阅读(306) 评论(0) 推荐(0)
摘要:任何数据的源或目的都被Unix视为文件,基本的系统调用既使用与磁盘文件也同样适用于设备文件,他们的区别体现在对连接(文件描述符)的操作上。磁盘文件的文件描述符包含对缓冲属性和扩展属性的定义代码。终端的文件描述符包含编辑、回显、字符转换和其他操作的属性定义代码。 阅读全文
posted @ 2020-06-04 21:31 凉风SK 阅读(276) 评论(0) 推荐(0)