어떻게 형식으로 출력의 unix 쉘 스크립트 편평한 파일을 생성합니다.sql 파일에서 유닉스 쉘 스크립트

0

질문

I have a unix 쉘 스크립트를 추출하는 데이터베이스의 데이터이다.sql 파일입니다. 이 SQL 내가 필요로하는 형식의 파일로 출력으로 설정 명령이 있습니다. 나는 필요한 출력에서는 방식으로 출력을 표시가 열 헤더없이 간격 또는 라인에서 헤더가 있습니다.

예상 출력:

Header1,header 2
Mark,California
Steve,India

출력 볼:(줄기 전에 헤더와 점선 후에는 헤더)

Header1, header 2
-----------------
Mark,California
Steve, India

쉘 스크립트:

ABC.sh
a=`sqlplus -silent $Database name @Ggg.sql`
mv xyz.csv xyz_$1.csv
dos2unix xyz_*.csv 2>  /dev/null
 (cat body.txt; uuencode xyz_$1.csv xyz_$1.csv) | mailx -s "subject" 
 [email protected]
(SQL file Gggg.sql is called and email is sent)

Ggg.sql 
`Set pagesize 5000`
`Set linesize 700`
`Set trimspool off`
`Set heading on`
`Set feedback off`
`Set term off`
`Set verify off``
Spool jjj.csv;
`Select * from table1 where column = '5'`;
`SPOOL OFF`;
EXIT`;
bash header shell sql
2021-11-23 14:54:54
2
0

가정 출력 포함 5 인:


Header1, header 2
-----------------
Mark,California
Steve, India

를 제거할 수 있습니다 원하지 않는 라인한 후 사용하여 생성 sed (또는 방법을 찾을 수행 sql 에서는 아마도 어렵)

ABC.sh | sed '1d;3d'

출력:

Header1, header 2
Mark,California
Steve, India
2021-11-23 17:34:14

아마도 그것을 쉽게 그 후 출력 생성하지만 필요해요 그것을 할 수있는 방법에. SQL 파일만으로.csv 평 파일을 생성하는 출력이 필요한 올바른 형식입니다.
Milagrin
0

에서 내가 이해 귀하의 질문에 대한 당신만 원하는 SQL 스크립트의 결과로의 열 이름을 따른 권리에 의해 테이블의 결과,그래서 당신은 수 열 이름을 선택하고 UNION 테이블 다음과 같은 결과가:

SELECT 'Header1', 'header 2'
UNION
SELECT Header1, Header2 FROM TableName

알림이 UNION'ed 선택해야 같은 양의 열이 있습니다.

는 경우에 당신의 테이블 스키마보다 더 복잡한 무언가가 간단하는,필요한 세부사항 제대로 그것은 그래서 쿼리를 예상대로 작동합니다.

2021-12-02 21:22:38

다른 언어로

이 페이지는 다른 언어로되어 있습니다

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................