質問編集履歴

1

追記

2019/02/04 04:27

投稿

inu_inu
inu_inu

スコア19

test CHANGED
File without changes
test CHANGED
@@ -39,3 +39,73 @@
39
39
  一回の処理で複数のファイルに出力する方法はありますでしょうか?
40
40
 
41
41
  ない場合は、TEST_2.logに出力した結果を、TEST_1.logに追記していく方向で考えてみたいと思います。
42
+
43
+
44
+
45
+ 追記
46
+
47
+ ---
48
+
49
+ 本処理はシェルスクリプトに記載している処理の一部となります。
50
+
51
+ テストに使用したシェルスクリプトを記載します。
52
+
53
+
54
+
55
+ ```bash
56
+
57
+ #!/bin/bash
58
+
59
+
60
+
61
+ PSQL_HOST=****
62
+
63
+ PSQL_USER=****
64
+
65
+ PSQL_DB=****
66
+
67
+
68
+
69
+ echo "!! START" >> TEST_1.log 2>&1
70
+
71
+
72
+
73
+ (psql -eh ${PSQL_HOST} -U ${PSQL_USER} -d ${PSQL_DB} 2>&1) | tee TEST_1.log 2>&1 | tee test_2.log 2>&1 << EOF
74
+
75
+
76
+
77
+ \COPY TABLE TO '出力先パス' WITH CSV HEADER NULL AS 'null' DELIMITER E'\t'
78
+
79
+
80
+
81
+ EOF
82
+
83
+
84
+
85
+ echo "!! END" >> TEST_1.log 2>&1
86
+
87
+
88
+
89
+ exit 0
90
+
91
+ ```
92
+
93
+ 上記実行すると、下記のようなログになりました。
94
+
95
+ ```
96
+
97
+ TEST_1.logの内容
98
+
99
+ !! START
100
+
101
+ !! END
102
+
103
+ ```
104
+
105
+ ```
106
+
107
+ TEST_2.logの内容
108
+
109
+ \COPY TABLE TO '出力先パス' WITH CSV HEADER NULL AS 'null' DELIMITER E'\t'
110
+
111
+ ```