2015-09-30 137 views
-1

我在bash上使用<()來創建虛擬文件。我基本上傾銷字符串到它,所以我會得到<(contents of string),但字符串是太長,我得到這個錯誤虛擬文件名太長

:error:0200103F:system library:fopen:File name too long:bss_file.c:391. 

我如何能防止這種創建虛擬文件時,有什麼建議?

+1

顯示您的代碼。我敢打賭,你正在使用過程替換錯誤。 –

+0

哦,我正在以編程的方式進行,圖書館正在做一些衛生,否則它實際上應該工作。 – Gakho

+0

「它應該工作」,除非沒有。顯示你的代碼。 –

回答

0

你可能會寫東西像

my_command <(foo bar baz) 

時,你應該寫

my_command <(printf "%s\n" foo bar base) 

的進程替換運行,其輸出被視爲一個文件的內容的命令;它不會簡單地將內容作爲一系列字符串提供。

+0

這就是答案 – Gakho