0
我有一個簡單的問題,但我無法找到答案)Postgres的:管道給psql
我有以下腳本:
sqsh -S SyBaseServer -U sybuser -P mypass -C 'select top 10000 * from dba.sybtable; -mbcp' | \
awk '{print substr($0, 0, length($0)-1)}' | \
psql -1 postgresql://admin:[email protected]:5432/pgbase -f sybtopg.sql
我怎樣才能的輸出中最後字符串後添加EOF AWK?我必須關閉psql的STDIN。
謝謝!
PS 失敗的原因並不是缺乏EOF。 這是正確的管道:
sqsh -S SyBaseServer -U sybuser -P mypass -C 'select top 10000 * from dba.wybtable; -mbcp' \
| awk '{print substr($0, 0, length($0)-1)}' | \
/psql postgresql://admin:[email protected]:5432/pgbase -c "DELETE FROM testtable; COPY testtable FROM STDIN DELIMITER '|' CSV"
可能重複[如何\'cat << EOF \'在bash中工作?](http://stackoverflow.com/questions/2500436/how-does-cat-eof-work-in-bash) – t0mm13b
當從輸入讀取EOF時,awk將寫入EOF。 – Barmar
@ t0mm13b這是怎麼回事?這個問題裏沒有here-doc。 – Barmar