cat命令使用及實現
Name:
cat --concatenate files and print on the standard output
把檔案串連接後傳到基本輸出(熒幕或加>fileName 到另一個檔案)
使用方式:
cat [OPTION][FILE]
參數:
-n 或-number 由1開始對所有輸出的行數編號
-b 或-number -nonblank 和 -n相似,只不過對於空白行不編號
-s 或-squeeze-bank當遇到有連續兩行以上的空白,就替換成一行
-v 或-show-nonprinting
範例:
cat -n textfile1>textfile2把textfile1的檔案內容加上行號後輸入textfile2這個檔案裏
cat -b textfile1 textfile2>>textfile3把textfile1和textfile2的檔案內容加上行號(空白行不加)之後將內容附加到textfile3
實現:
#include<stdio.h>
#include<stdlib.h>
FILE* filecopy(FILE* ifp,FILE* ofp);//當ofp爲stdout時,將ifp指向的文件標準輸出
int main(int argc,char* argv[])
{
FILE* ftp;
if(arg==1)
filecopy(stdin,stdout);//當argc=1時,從標準輸入輸入到標準輸出
else
while(--argc)
if((fp=fopen(*++argv,"r"))!==NULL)/*argc不爲1標準輸出fp指向的文件*/
{
filecopy(fp,stout);
fclose(fp);
}
else
{
print("error/n");
exit(1);
}
return 0;
}
FILE* filecopy(FILE* ifp,FILE* ofp)
{
char c;
while((c=getc(ifp)!=EOF)
putc(c,ofp);
}/*爲什麼用getc(),putc(),而不用getchar(),putchar(),
因爲getc(),putc()沒用到文件指針*/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.