簡體   English   中英

嘗試打印到bash腳本中的多個文件時出錯

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM