Re: copy command - something not found

From: Susan Hurst <susan(dot)hurst(at)brookhurstdata(dot)com>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: copy command - something not found
Date: 2020-12-29 19:58:59
Message-ID: 6e225170cb1d4bf52fab2001db22d581@mail.brookhurstdata.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Thank you for the reminders, John. I changed my .z file extension to
.tmp and removed the trailing / from my pre-defined directory path.

I'm still getting the same results as before though after changing the
.z file extension to .tmp.

The ${DBNAME} and ${HOSTNAME} variables are input at run time. Here is
usage format:
### Usage: copy_data.sh rfc_name db_name [db_host]
Note: [db_host] (hostname) is optional with default localhost, which is
what I'm using in this particular case.

My actual input at execution time was this: ./install_db.sh RFC-00001
stp
This script calls the copy_data.sh script.

${CSVPATH} is: /home/dbzone/stp/rfc_db/RFC-00001 (after removing the
trailing /)

---
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Susan E Hurst
Principal Consultant
Brookhurst Data LLC
Email: susan(dot)hurst(at)brookhurstdata(dot)com
Mobile: 314-486-3261

On 2020-12-29 13:20, John McKown wrote:

> Can't really tell. You might want to post the output of the "printenv" command to show us what the shell variables you are using have in them. Oh, does ${CSVPATH} end in a slash? If it is something like "~/mycsvs" then ${CSVPATH}copycmd.z will expand to "~/mycsvscopycmd.z". Most "PATH" environment variables don't end in a /, perhaps you need "${CSVPATH}/copycmd.z" ? Also, as an aside. most UNIX files which end in .z are compressed, IIRC. Make sure the contents of the file are plain text.
>
> On Tue, Dec 29, 2020 at 1:12 PM Susan Hurst <susan(dot)hurst(at)brookhurstdata(dot)com> wrote:
>
>> I am trying to use the copy command from a csv files using a UNIX shell
>> script but something is 'not found'...I can't figure out what is 'not
>> found'. Below is my command from the shell script, the executed command,
>> the content of the csv file and the output from trying to execute the
>> command.
>>
>> Clearly, the file is being read but I can't figure out what is not
>> found. BTW, the column names in the stg.bar_active table match the names
>> and order in the first row of the csv file. What should I be looking
>> for?
>>
>> Thanks for your help!
>>
>> Sue
>>
>> ##-- shell script command
>> psql -d ${DBNAME} -U ${DBNAME} -h ${HOSTNAME} -c < ${CSVPATH}copycmd.z
>>
>> ##-- executed command
>> "copy stg.bar_active from
>> '/home/dbzone/stp/rfc_db/RFC-00001/RFC-00001_copy_bar_active.csv'
>> delimiter ',' CSV HEADER;"
>>
>> ##-- content of .csv file
>> schema_name,table_name,table_alias ...(this is the header
>> row)
>> chief,source_systems,ssys
>> chief,lookup_categories,lcat
>> chief,lookup_data,ldat
>>
>> ##-- output from terminal window
>> /home/dbzone/stp/rfc_db/RFC-00001/RFC-00001_copy_bar_active.csv:
>> schema_name,table_name,table_alias: not found
>> /home/dbzone/stp/rfc_db/RFC-00001/RFC-00001_copy_bar_active.csv:
>> chief,source_systems,ssys: not found
>> /home/dbzone/stp/rfc_db/RFC-00001/RFC-00001_copy_bar_active.csv:
>> chief,lookup_categories,lcat: not found
>> /home/dbzone/stp/rfc_db/RFC-00001/RFC-00001_copy_bar_active.csv:
>> chief,lookup_data,ldat: not found
>>
>> ##-- select version();
>> PostgreSQL 11.9 on amd64-portbld-freebsd12.1, compiled by FreeBSD clang
>> version 8.0.1 (tags/RELEASE_801/final 366581) (based on LLVM 8.0.1),
>> 64-bit
>>
>> --
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> Susan E Hurst
>> Principal Consultant
>> Brookhurst Data LLC
>> Email: susan(dot)hurst(at)brookhurstdata(dot)com
>> Mobile: 314-486-3261

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Susan Hurst 2020-12-29 20:01:43 Re: copy command - something not found
Previous Message Tom Lane 2020-12-29 19:55:40 Re: copy command - something not found