我正在使用python腳本將數據加載到數據庫批量加載程序。使用Python列表作爲輸入,用於使用stdin作爲輸入的linux命令
加載器的輸入是stdin。我一直無法獲得正確的語法來調用基於unix的批量加載器來傳遞要加載的python列表的內容。
我一直在閱讀關於Popen和PIPE,但他們沒有像我期望的那樣行事。
python list包含要被批量加載的數據庫記錄。在Linux中它看起來類似於這樣的:
echo "this is the string being written to the DB" | sql -c "COPY table FROM stdin"
什麼是正確的方法替換echo命令與Python命令使用此命令?
我沒有這個過程的示例代碼,因爲我一直在用一些非常簡單的語法試驗Popen和PIPE的特性,而沒有獲得所需的結果。
任何幫助將非常感激。
感謝
您的意思是傳遞列表中的數據的字符串表示,對吧? (因爲你不能像stdin那樣通過一個流來傳遞一個Python列表 - 你只能傳遞字節,例如文本) –
你能像在Linux中輸入一樣使用一個完整的工作命令嗎? – heltonbiker
正確的大衛。我將閱讀列表中的字符串。 – Steven