Linux C/C++基础 文件(中)
1.ubuntu cat命令的实现
cat——查看或者合并文件内容
#include<stdio.h> int main(int argc,char* argv[]) { //1.打开文件,文件路径,argv[1] //2.读取文件的内容,将内容显示到屏幕 //3.关闭文件 FILE*fp=fopen(argv[1],"r"); while(1) { if(feof(fp)) { break; } ch=fgetc(fp); printf("%c",ch); } fclose(fp); fp=NULL; return 0; }
上面实现了cat的功能,但是在执行的时候还需要加./
下面将mycat加入到bin目录,实现不加./,直接输入命令功能
用which cat查看cat在那个目录
2.最基本的vim命令的实现
#include<stdio.h> #include<string.h> int main(int argc,char*argv[]) { //1.已写的方式打开,w,路径为argv[1] //2.从键盘读取内容fgets(),放在字符数组 //3.字符数组内容,一个一个字符往文件写 //4.关闭文件 FILE*fp=fopen(argv[1],"w"); char buf[1024]; while(1) { //默认遇到换行符,此处结束读取,换行符都放在buf //fgets()按行读取 fgets(buf,sizeof(buf),stdin); //如果用户输入的内容为:wq,结束,保存文件,strncmp函数用于比较特定长度的字符串,当string1大于string2时,返回1;等于时,返回0;小于时,返回-1。 if(strncmp(buf,":wq",3)==0) { break; } int i=0; while(buf[i]!=‘\0‘) { fputc(buf[i],fp); i++; } } fclose(fp); fp=NULL; return 0; }
相关推荐
farwang 2020-11-25
星愿心愿 2020-11-24
tianhuak 2020-11-24
zhjn0 2020-11-24
昭君出塞 2020-11-23
bluecarrot 2020-11-23
linuxwcj 2020-10-21
以梦为马不负韶华 2020-10-20
彼岸随笔 2020-10-20
yutou0 2020-10-17
applecarelte 2020-10-16
ourtimes 2020-10-16
waterhorse 2020-09-19
MRFENGG 2020-11-11
rainandtear 2020-10-30
kyssfanhui 2020-10-20
liuhangtiant 2020-10-20