我有一個Vertica副本腳本(A.copy.vsql),它將數據從具有HEADER,TRAILER和DETAIL RECORDS的文件加載到表中。從Vertica的複製腳本中刪除頁腳
Vertica Copy語句可以跳過1條記錄,這意味着我知道如何刪除標題。
我想知道我是否可以用相同的方式切割預告片?另外,如果我不能像頭一樣砍它,那麼我可以在VSQL本身(A.copy.vsql)中編寫簡單的linux SED命令來完成這項工作嗎?
我有一個Vertica副本腳本(A.copy.vsql),它將數據從具有HEADER,TRAILER和DETAIL RECORDS的文件加載到表中。從Vertica的複製腳本中刪除頁腳
Vertica Copy語句可以跳過1條記錄,這意味着我知道如何刪除標題。
我想知道我是否可以用相同的方式切割預告片?另外,如果我不能像頭一樣砍它,那麼我可以在VSQL本身(A.copy.vsql)中編寫簡單的linux SED命令來完成這項工作嗎?
如果你想刪除一個文件的第一個和最後一個行,您可以使用:
sed '1d;$d' file
而且在命令中使用,與圖案command file
, 一個也可以,使用bash,使用進程替換:
command <(sed '1d;$d' file)
1
和$
是絕對地址,1表示第一行中,而$
意味着最後。 d
刪除所處理的行。
<(...)
是一個進程替換。
我也想使用bash命令SED,我唯一的問題是:我可以在VSQL文件中編寫SED還是應該在調用我的VSQL之前創建另一個腳本? –
您無法使用Vertica或vsql完成此操作。你也許可以做'從STDIN複製'並使用sed流式傳輸文件。 – woot