[英]error while trying print to several files in bash scripts
我有一個與寫入文件有關的問題。
我已經在c
創建了server/client
(對於Linux
,通過sockets
)。
我希望clients
保存他們執行的所有操作的日志文件。 當我打開一個客戶端並傳輸文件時,一切都很好,但是當我檢查服務器的多請求支持(通過創建一個檢查所有請求的bash腳本)時,我發現我的客戶端都沒有寫任何東西。
客戶端命令是: ./client_prog host port file_to_receive log_file
腳本:
cd client1/
./client_prog localhost 22222 file.txt log &
cd client2/
./client_prog localhost 22222 file.txt log &
cd client3/
./client_prog localhost 22222 file.txt log &
#more clients....
每個客戶端創建日志線程並通過管道傳輸數據,日志線程使用fopen
(), fprintf
()和fclose
()將其寫入。
順便說一句,當我從兩個不同的終端嘗試時,它工作正常。
這沒有任何意義。
謝謝!
那是您的確切劇本(或簡化的小節)嗎?
您確定在嘗試移動到其他客戶端目錄之前(第一個客戶端之后)不想執行“ cd .. ”嗎? 如果您的初始“ cd client2 ”失敗,那么您最終將嘗試使用相同的“ file.txt ”和“ log ”啟動客戶端,這可能會導致一些錯誤?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.