Linux下CAT程序的C实现代码片段:

#include

#include

#include

#define BUFSIZ 1024

void error(char *fmt, ...){

va_list args;

va_start(args, fmt);

fprintf(stderr, "error: ");

vfprintf(stderr, fmt, args);

fprintf(stderr, "\n");

va_end(args);

exit(1);

}

#include "syscalls.h"

main(int argc, char *argv[]){

char buf[BUFSIZ];

int n, f1;

if(argc == 1){

while((n = read(0, buf, BUFSIZ)) > 0){

write(1, buf, n);

}

}

else if(argc == 2){

if((f1 = open(argv[1], O_RDONLY, 0)) == -1){

error("cat: No such file or directory %s", argv[1]);

}else {

while((n = read(f1, buf, BUFSIZ)) > 0){

write(1, buf, n);

}

}

} else {

error("Wait for new version --javawebzwp@gmail.com");

}

}

linux cat 进程,Linux下CAT程序的C实现相关推荐

  1. linux 等待进程,Linux 进程等待队列

    Linux内核的等待队列是以双循环链表为基础数据结构,与进程调度机制紧密结合,能够用于实现核心的异步事件通知机制. 在这个链表中,有两种数据结构:等待队列头(wait_queue_head_t)和等待 ...

  2. linux编程进程,Linux编程—进程

    1.进程的概念 进程是一个动态的实体,是程序的一次执行过程.进程是操作系统资源分配的基本单位. Linux下可通过ps或pstree查看当前系统中的进程. 查询正在运行的程序 ps -eo pid,c ...

  3. linux defunct 进程,Linux僵尸进程(Zombie or defunct)

    僵尸进程(Zombie or defunct)关于Linux僵尸进程,一般是由于子进程结束的时候,会有一些资源没有释放掉,直到父进程结束或者由父进程去处理它才可以! www.cit.cn 僵尸进程就是 ...

  4. linux 空白进程,Linux空白行:行号显示、空白行数统计、删除空白行

    这里的空白行,泛指只有一个换行符的行. 空白行的行号显示: cat -b 选项,可以不在空行前面加行号.nl命令也能实现类似的效果: root@db2a:/tmp# cat -b count.sh 1 ...

  5. Linux运行cat进程,linux下如何使用某个用户启动某个进程?

    安全里有个原则,叫最小权限原则python 根据这个原则,对于启动某个应用或者进程,应该赋予其最小权限,根据应用权限要求,建立一个相应权限的用户,赋予其应用相应的权限,而后使用这个用户启用这个应用li ...

  6. linux 释放进程res_linux下查询进程占用的内存方法总结

    linux下查询进程占用的内存方法总结 假设现在有一个「php-cgi」的进程 ,进程id为「25282」.现在想要查询该进程占用的内存大小.linux命令行 下有很多的工具进行查看,现总结常见的几种 ...

  7. linux proc进程,linux 下 /proc/进程号/ 重要进程文件的内容解析

    /proc//maps 查看进程的虚拟地址空间是如何使用的. 该文件有6列,分别为: 地址:库在进程里地址范围 权限:虚拟内存的权限,r=读,w=写,x=,s=共享,p=私有: 偏移量:库在进程里地址 ...

  8. linux祖先进程,Linux下的几种特殊进程

    1.Linux的登录环境 Linux是一个多任务多用户的操作系统,其设计初衷: 就是要达成多用户同时使用单个计算机大的任务. 多用户:早期计算机资源紧张,为了让更多的人都可以使用. 多任务:服务于多用 ...

  9. linux 隐藏进程,linux下如何隐藏进程(ps/top)

    相关文章 今天看了一篇外国的blog,讲的是如何在2.4内核中隐藏进程. 其核心思想就是把task->pid变成0,就成了0号进程.而在ps,top命令中,是不显示0号进程的相关信息.这么一来, ...

最新文章

  1. sql server 2012序列号
  2. orCAD使用Orcad Capture CIS按Room摆放
  3. 微软中文网,越办越好了!
  4. html基础电子文档,html基础
  5. U-GAT-IT 论文阅读
  6. FPGA常用总线IIC 与SPI选择策略
  7. Django框架架构总览
  8. 【网络流24题】No.4 魔术球问题 (二分+最小路径覆盖)
  9. ev3编程 越野机器人_乐高EV3机器人编程超简单
  10. Windows下Xelatex的使用
  11. 移动端日期插件rolldate
  12. 微信小程序下拉刷新功能
  13. shell—(色彩处理)
  14. 深度学习-浅层神经网络
  15. 关于virtualbox无法复制粘贴的问题
  16. 码医自学法V2.2(附名老中医)
  17. 顺序表的建立、查找、插入、删除
  18. 谷歌chrome浏览器怎么导出打包扩展程序crx
  19. 圆形上下挤压 matlab,基于Matlab的GUI设计双螺杆挤压机系统仿真软件
  20. Excel-图表数据标签自定义内容

热门文章

  1. selenium===使用docker搭建selenium分布式测试环境
  2. 收藏:视频网站(JavaEE+FFmpeg)/Nginx+ffmpeg实现流媒体直播点播系统
  3. Zookeeper实战之单机模式
  4. GOROOT、GOPATH、GOBIN、project目录
  5. yii 字段验证的使用
  6. nginx 配置笔记
  7. 日志管理:(五) log4j.xml 配置实例
  8. JDK5--Annotation学习:基础(一)
  9. 计算机术语中英文cat表示,pcb 专业术语 中英文对照三
  10. 单体 Bean 注册实例