使用LINUX dup2 複製檔案描述符到標準輸出STDOUT_FILENO
7
8 #include<stdio.h>
9 #include <sys/types.h>
10 #include <sys/stat.h>
11 #include <fcntl.h>
12 #include <stdlib.h>
13 #include <unistd.h>
14
15
16
17 int main(int argc,char *argv[])
18 {
19 int fd;
20 char ch;
21 setbuf(stdout, NULL);
22 if(argc<2)
23 {
24 printf("one file need!\n");
25 exit(0);
26 }
27 fd=open(argv[1],O_CREAT|O_RDWR,0777);
28 if(fd==-1)
29 {
30 perror("create error:");
31 }
32 dup2(fd,STDOUT_FILENO);
33 close(fd);
34 printf("testh is test");
35 }
dup2(fd,STDOUT_FILENO); 這一行 代表我們將STDOUT_FILENO 也就是檔案描述符1 複製為我們新建的檔案的檔案描述符
這種情況下我們PRINTF就不能輸入資訊到螢幕上了,而是寫入到檔案
8 #include<stdio.h>
9 #include <sys/types.h>
10 #include <sys/stat.h>
11 #include <fcntl.h>
12 #include <stdlib.h>
13 #include <unistd.h>
14
15
16
17 int main(int argc,char *argv[])
18 {
19 int fd;
20 char ch;
21 setbuf(stdout, NULL);
22 if(argc<2)
23 {
24 printf("one file need!\n");
25 exit(0);
26 }
27 fd=open(argv[1],O_CREAT|O_RDWR,0777);
28 if(fd==-1)
29 {
30 perror("create error:");
31 }
32 dup2(fd,STDOUT_FILENO);
33 close(fd);
34 printf("testh is test");
35 }
dup2(fd,STDOUT_FILENO); 這一行 代表我們將STDOUT_FILENO 也就是檔案描述符1 複製為我們新建的檔案的檔案描述符
這種情況下我們PRINTF就不能輸入資訊到螢幕上了,而是寫入到檔案
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7728585/viewspace-1990809/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 物聯網學習教程Linux系統程式設計之檔案描述符的複製:dup()和dup2()Linux程式設計
- matlab輸出複數到檔案Matlab
- Linux的標準輸入、標準輸出和標準錯誤Linux
- Linux--檔案描述符、檔案指標、索引節點Linux指標索引
- Linux基礎命令---echo列印內容到標準輸出Linux
- Linux檔案描述符Linux
- linux複製檔案到另一個資料夾怎麼操作 linux複製檔案的命令介紹Linux
- linux中的檔案描述符Linux
- Java —— 標準輸入輸出Java
- python 標準輸入輸出Python
- 檔案包含之包含了Linux檔案描述符Linux
- linux自動清理Docker標準輸出日誌LinuxDocker
- Linux 中複製和移動檔案Linux
- 利用標準I/O函式,實現兩個檔案的複製功能函式
- Linux系統複製檔案/資料夾到遠端伺服器Linux伺服器
- 如何傳輸檔案到linux伺服器?Linux伺服器
- ABAP BAPI 複製標準專案模板實現專案立項API
- Linux基礎知識4:重定向、標準輸出和標準錯誤、man、tldrLinux
- 複製檔案githubGithub
- JDK 18 及以上使用標準輸出流中文輸出亂碼問題JDK
- 檔案描述符
- linux下使用windows標頭檔案LinuxWindows
- 如何批量複製多個檔案到多個目錄中(批量複製檔案,多對多檔案高效操作的方法)
- 透過二維碼傳輸檔案到linuxLinux
- 使用scp命令在多個Linux系統間進行檔案複製Linux
- 標準的位元組輸出流 & 如何用它寫一篇日誌檔案
- Linux 檔案傳輸Linux
- cp 快捷命令:複製檔案到多個目錄
- Windows 複製 xcopy 檔案到另外一個 目錄Windows
- 踩坑PHP複製檔案到另外資料夾PHP
- linux如何系統掛載u盤複製檔案Linux
- 檔案太大不能複製到隨身碟怎麼辦 win10檔案過大無法複製到隨身碟Win10
- ubuntu下檔案複製Ubuntu
- 排序,檔案輸入輸出排序
- 015 Linux 標準輸入輸出、重定向、管道和後臺啟動程式命令Linux
- 解決關於Mac不能複製複製檔案到隨身碟的問題Mac
- 將檔案從Linux傳輸到Windows(後期利用)LinuxWindows
- 如何使用scp進行遠端複製檔案?
- 檔案描述符和檔案系統