cp: cannot access??


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting cp: cannot access??
# 1  
Old 04-12-2006
MySQL cp: cannot access??

gurus have a look at the following script


#! /usr/bin/ksh
# New order processing script/abhijeet/28-02-2006
# there are two 'for' loops for 'prepaid' & 'postpaid' respectively
# whats new: xmls will NOT traverse sequentially but will be copied to
# respective systems parallely.

source=/u02/CFS

echo "" > $source/Log/ox1
echo "" > $source/Log/ox2
echo "" > $source/Log/ox3
echo "" > $source/Log/ox4
echo "" > $source/Log/name1
echo "" > $source/Log/name2

ls $source/home/selectica/Outbox > $source/Log/ox1
grep "New_Ordr_" $source/Log/ox1 > $source/Log/ox2
grep "_PREPAID.xml" $source/Log/ox2 > $source/Log/ox1

# 'PREPAID' loop starts here..file to be copied only to CRM & OMS.

for file1 in `grep "New_Ordr_" $source/Log/ox1`
do
listfile="Order_PREPAID_`date +%d%m%Y`.lst"
echo $file1 >> $source/Log/$listfile
logfile="Order_PREPAID_`date +%d%m%Y`.log"

echo "##################################################################################" >> $source/Log/$logfile


echo "DATE........SYSTEM......STATUS.....FILE NAME.........TIME" >> $source/Log/$logfile

echo $file1 > $source/Log/name1
file2=`cut -b 5- $source/Log/name1`

sys1=SELECTICA
stat1=RECEIVED
echo "`date +%D`...$sys1....$stat1....$file1....`date +%T`" >> $source/Log/$logfile
sleep 2
echo "`date +%D`...IT IS A PREPAID ORDER...`date +%T`" >> $source/Log/$logfile

sys2=CLARIFY
stat2=COPIED
mstat2=RENAMED

cp $source/home/selectica/Outbox/$file1 $source/home/clarify/Inbox/$file1
echo "`date +%D`....$sys2....$stat2....$file1....`date +%T`" >> $source/Log/$logfile
mv $source/home/clarify/Inbox/$file1 $source/home/clarify/Inbox/$file2
chmod 666 $source/home/clarify/Inbox/$file2
echo "`date +%D`....$sys2....$mstat2...$file2...`date +%T`" >> $source/Log/$logfile
sleep 2

#mv $source/home/clarify/Inbox/$file2 $source/home/clarify/PArchive/$file2
#mv $source/home/clarify/Archive/$file2 $source/home/clarify/PArchive/$file2
# file is being copied to CRM..now moving to OMS.

sys3=OMS
stat3=COPIED
mstat3=RENAMED

cp $source/home/selectica/Outbox/$file1 $source/home/oms/Inbox/$file1
echo "`date +%D`...$sys3....$stat3...$file1...`date +%T`" >> $source/Log/$logfile
mv $source/home/oms/Inbox/$file1 $source/home/oms/Inbox/$file2
chmod 666 $source/home/oms/Inbox/$file2
echo "`date +%D`...$sys3....$mstat3....$file2...`date +%T`" >> $source/Log/$logfile
sleep 2

#mv $source/home/oms/Inbox/$file2 $source/home/oms/Archive/$file2

# file is being copied to OMS...'PREPAID' loop ends here.

stat0=ARCHIVED
mv $source/home/selectica/Outbox/$file1 $source/home/selectica/Archive/$file2
echo "`date +%D`...$sys1...$stat0...$file1...`date +%T`" >> $source/Log/$logfile
done


# 'POSTPAID' loop starts here

ls $source/home/selectica/Outbox > $source/Log/ox3
grep "New_Ordr_" $source/Log/ox3 > $source/Log/ox4
grep "_POSTPAID.xml" $source/Log/ox4 > $source/Log/ox3

for file3 in `grep "New_Ordr_" $source/Log/ox3`
do
listfile="Order_POSTPAID_`date +%d%m%Y`.lst"
echo $file3 >> $source/Log/$listfile
logfile="Order_POSTPAID_`date +%d%m%Y`.log"
echo "################################################################################"
echo "DATE....SYSTEM...STATUS.....FILE...........TIME " >> $source/Log/$logfile

echo $file3 > $source/Log/name2
file4=`cut -b 5- $source/Log/name2`

sys4=SELECTICA
stat4=RECEIVED

echo "`date +%D`...$sys4...$stat4...$file3...`date +%T`" >> $source/Log/$logfile
sleep 2

echo "`date +%D`....IT IS A POSTPAID ORDER.........." >> $source/Log/$logfile

sys5=ADC
stat5=RECEIVED
mstat5=RENAMED


cp $source/home/selectica/Outbox/$file3 $source/home/adc/Inbox/$file3
echo "`date +%D`...$sys5...$stat5...$file3....`date +%T`" >> $source/Log/$logfile

mv $source/home/adc/Inbox/$file3 $source/home/adc/Inbox/$file4
chmod 666 $source/home/adc/Inbox/$file4
echo "`date +%D`...$sys5...$mstat5...$file4...`date +%T`" >> $source/Log/$logfile

#mv $source/home/adc/Archive/$file4 $source/home/adc/PArchive/$file4
sleep 20
#chmod 666 $source/home/adc/Archive/$file4


sys6=CLARIFY
stat6=COPIED
#mstat6=RENAMED

cp $source/home/adc/Archive/$file4 $source/home/clarify/Inbox/$file4
#echo "`date +%D`...$sys6...$stat6...$file3...`date +%T`" >> $source/Log/$logfile

#mv $source/home/clarify/Inbox/$file3 $source/home/clarify/Inbox/$file4
#chmod 666 $source/home/clarify/Inbox/$file4

echo "`date +%D`...$sys6...$stat6...$file4....`date +%T`" >> $source/Log/$logfile

#mv $source/home/clarify/Archive/$file4 $source/home/clarify/PArchive/$file4
sleep 2

sys7=OMS
stat7=COPIED
#mstat7=RENAMED

cp $source/home/adc/Archive/$file4 $source/home/oms/Inbox/$file4
#echo "`date +%D`...$sys7...$stat7...$file3....`date +%T`" >> $source/Log/$logfile

#mv $source/home/oms/Inbox/$file3 $source/home/oms/Inbox/$file4
#chmod 666 $source/home/oms/Inbox/$file4

echo "`date +%D`...$sys7...$stat7...$file4....`date +%T`" >> $source/Log/$logfile

#mv $source/home/oms/Inbox/$file4 $source/home/oms/Archive/$file4

sleep 2
stat8=ARCHIVED

mv $source/home/selectica/Outbox/$file3 $source/home/selectica/Archive/$file4
echo "`date +%D`...$sys4...$stat8....$file3....`date +%T`" >> $source/Log/$logfile
done
-----------------------------------------------------
i am getting following errors continously:
cp: cannot access /u02/CFS/home/adc/Archive/Ordr_100000063121_120406141037_01_POSTPAID.xml
cp: cannot access /u02/CFS/home/adc/Archive/Ordr_100000063121_120406141037_01_POSTPAID.xml


why am i getting these errors? Is it a permissions issue?

if i copy manually ,it will work...but not by script...

one more thing.....
First order reaches ADC & it is then parsed by the xml parser & then it is put into "Archive" folder of ADC by the parser.
Parsing may take time depending upon the data in the order xml....
could that be the issue?



thanks & regards
abhijeet
# 2  
Old 04-12-2006
First of all your script isn't written very well.

Where is the error checking at? Error checking will save you a trip to this forum for answers. Trust me.

Example from your script...

Add this at the top.
##################
function if_error
##################
{
if [[ $? -ne 0 ]]; then # check return code passed to function
print "$1" | tee -a $MYLOG # if rc > 0 then print error msg and quit
exit $?
fi
}


cp $source/home/selectica/Outbox/$file1 $source/home/oms/Inbox/$file1
if_error "Oh crap. My copy of $source/home/selectica/Outbox/$file1 failed"
echo "`date +%D`...$sys3....$stat3...$file1...`date +%T`" >> $source/Log/$logfile
mv $source/home/oms/Inbox/$file1 $source/home/oms/Inbox/$file2
if_error "Oh Damn. My moved of $source/home/oms/Inbox/$file1 failed"
chmod 666 $source/home/oms/Inbox/$file2
if_error "Oh poop. My chmod of $source/home/oms/Inbox/$file2 failed"
echo "`date +%D`...$sys3....$mstat3....$file2...`date +%T`" >> $source/Log/$logfile
sleep 2

Last edited by x96riley3; 04-13-2006 at 12:28 PM..
# 3  
Old 04-13-2006
MySQL

i have modified my script
can anyone throw light on this...pls???



# 'POSTPAID' loop starts here

ls $source/home/selectica/Outbox > $source/Log/ox3
grep "New_Ordr_" $source/Log/ox3 > $source/Log/ox4
grep "_POSTPAID.xml" $source/Log/ox4 > $source/Log/ox3

for file3 in `grep "New_Ordr_" $source/Log/ox3`
do
listfile="Order_POSTPAID_`date +%d%m%Y`.lst"
echo $file3 >> $source/Log/$listfile
logfile="Order_POSTPAID_`date +%d%m%Y`.log"
echo "################################################################################"
echo "DATE....SYSTEM...STATUS.....FILE...........TIME " >> $source/Log/$logfile

echo $file3 > $source/Log/name2
file4=`cut -b 5- $source/Log/name2`

sys4=SELECTICA
stat4=RECEIVED

echo "`date +%D`...$sys4...$stat4...$file3...`date +%T`" >> $source/Log/$logfile
sleep 2

echo "`date +%D`....IT IS A POSTPAID ORDER.........." >> $source/Log/$logfile

sys5=ADC
stat5=RECEIVED
mstat5=RENAMED


cp $source/home/selectica/Outbox/$file3 $source/home/adc/Inbox/$file3
echo "`date +%D`...$sys5...$stat5...$file3....`date +%T`" >> $source/Log/$logfile

mv $source/home/adc/Inbox/$file3 $source/home/adc/Inbox/$file4
chmod 666 $source/home/adc/Inbox/$file4
echo "`date +%D`...$sys5...$mstat5...$file4...`date +%T`" >> $source/Log/$logfile
done

sleep 5

# New addition starts /13042006
ls $source/home/adc/Archive > $source/Log>ox5
grep "Ordr_10" $source/Log/ox5 > $source/Log/ox6
grep "_POSTPAID.xml" $source/Log/ox6 > $source/Log/ox5

for file5 in `grep "Ordr_10" $source/Log/ox5
do

sys6=CLARIFY
stat6=COPIED
mstat6=RENAMED

sys7=OMS
stat7=COPIED
mstat7=RENAMED

mv $source/home/adc/Archive/$file5 $source/home/adc/Archive/New_$file5
file6=`ls $source/home/adc/Archive |grep "New_"|grep -v grep`

#clarify copy
cp $source/home/adc/Archive/$file6 $source/home/clarify/Inbox/$file6
echo "`date +%D`...$sys6...$stat6...$file6....`date +%T`" >> $source/Log/$logfile
mv $source/home/clarify/Inbox/$file6 $source/home/clarify/Inbox/$file5
echo "`date +%D`...$sys6...$mstat6...$file5....`date +%T`" >> $source/Log/$logfile
chmod 666 $source/home/clarify/Inbox/$file5

# oms copy
cp $source/home/adc/Archive/$file6 $source/home/oms/Inbox/$file6
echo "`date +%D`...$sys7...$stat7...$file6....`date +%T`" >> $source/Log/$logfile
mv $source/home/oms/Inbox/$file6 $source/home/clarify/Inbox/$file5
echo "`date +%D`...$sys7...$mstat7...$file5....`date +%T`" >> $source/Log/$logfile
chmod 666 $source/home/clarify/Inbox/$file5

mv $source/home/adc/Archive/$file6 $source/home/adc/PArchive/$file5
done

# New addition ends /13042006
sleep 2
stat8=ARCHIVED

mv $source/home/selectica/Outbox/$file3 $source/home/selectica/Archive/$file4
echo "`date +%D`...$sys4...$stat8....$file3....`date +%T`" >> $source/Log/$logfile
done
# 4  
Old 04-13-2006
Where is your error checking? You still don't have any?

What's wrong with you? There is not one ounce of error checking in that code you're calling a script.

Sorry to be rude but if you would listen to me and put some damn error checking in your script you wouldn't be here.

-X
# 5  
Old 04-14-2006
MySQL

First of all
sorry for writing that last scrap...it was badly written.

secondly
i have never used "functions" in shell scripts
so i am not trying it.

i know where error is coming....but why is it coming...i want to know.
As most of you have seen the script(first one) ,i am simply copying & renaming the file(s) across systems.

the error says "cp:cannot aceess <file path> "

this is what i am trying to dig....

most intrestingly,this error comes randomly..not for every transfer....
this is the most confusing part of it...


regards
abhijeet
# 6  
Old 04-14-2006
sudo ls -l /u02/CFS/home/adc/Archive/Ordr_100000063121_120406141037_01_POSTPAID.xml
sudo ls -ld /u02/CFS/home/adc/Archive /u02/CFS/home/adc /u02/CFS/home /u02/CFS /u02
check the permission of failed file and the file path!
# 7  
Old 04-14-2006
You will be doing yourself a favor by error checking. I understand that you might know where your probally is but you should to things the right way by using error checking. I'll be glad to help you learn how to use functions in shell scripts.

I think your getting those errors because of either permissions or because the file doesn't exist. Why don't you error check that part in the script? Do something like this.



cp /home/myaccount/file /tmp .
if [[ $? != 0 ]]; then
print "Copy of /home/myaccount/file failed"
ls -ld /tmp
print "Are the permissions on tmp above ok?"
ls -lart /home/myaccount/file
print "What about the permissions on the file I'm moving"
id
print "I'm logged in as the above id, is this correct?"
groups
print "Am I in the correct groups above?"
fi

Writing your code this way will help you.

-X
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Proxy Server

How to use Squid on Linux to control certain IP to access Web Server and certain IP cannot access?

Dear all experts here, :) I would like to install a proxy server on Linux server to perform solely to control the access of Web server. In this case, some of my vendor asked me to try Squid and I have installed it onto my Linux server. I would like know how can I set the configuration to... (1 Reply)
Discussion started by: kwliew999
1 Replies

2. Homework & Coursework Questions

Remote Access vs Local Access

Dear Friends, This is not a problem , it's a course work (UNIX scenario).... As part of it I am searching Remote Attacks and find points as 1. Exploiting a listening service 2. Routing through Unix system that is providing security between 2 or more networks 3. User initiated Remote execution... (1 Reply)
Discussion started by: anespa
1 Replies

3. Solaris

samba read write access to owner and no access to other users

Hi All, I want to configure samba share permission so that only directory creator/owner has a read and write permission and other users should not have any read/write access to that folder.Will that be possible and how can this be achieved within samba configuration. Regards, Sahil (1 Reply)
Discussion started by: sahil_shine
1 Replies

4. Solaris

cp: cannot access

Hi all, I have this statement: cp `ls -lrt |awk '{if($6=="Feb") print $9}'|wc -l` /smartapp/reports/archive_jan_feb_march/ However it fails with: cp: cannot access 948 The owner for this script is not a concern, May I know which part went wrong? (8 Replies)
Discussion started by: nikhil kasar
8 Replies

5. AIX

ftp access without shell access

Hi all, I'm using AIX v 5.3 I want to create system users to access through ftp or sftp and restrict those users into specific directory and don't traverse the whole file system just to be restricted within a directory and don't get shell access . i don't want to use any other third party... (7 Replies)
Discussion started by: h@foorsa.biz
7 Replies

6. IP Networking

Does my provider limit my internet access or somesites access?

Hi Good Day, i would like to ask for further info about my problems experiencing this evening. Im a PPP0 connection in the internet using 3G located in asia pacific region.i had this problem this evening in my INTERNET connections that there are some sites i can't open example ( Gizmodo.com,... (2 Replies)
Discussion started by: jao_madn
2 Replies

7. UNIX for Dummies Questions & Answers

kernel giving access for multiple users to access files

hi all, i want to know y kernel is giving access for multiple users to access a file when one user may be the owner is executing that file. Because other user can manipulate that file when the other user is executing that file, it will give the unexpected result to owner . plz help me... (1 Reply)
Discussion started by: jimmyuk
1 Replies

8. SuSE

"scp" access denied:/etc/security/access.conf

Guys i have 2 SUSE Linux Enterprise Server 10 SP1 (i586) boxes.if i take a look into /etc/security/access.conf ,i see following lines at the eof # All other users should be denied to get access from all sources. #- : ALL : ALL - : myID : ALL now earlier i had written scripts where files... (1 Reply)
Discussion started by: ak835
1 Replies

9. UNIX for Dummies Questions & Answers

How to access CD

Hi, I have to apply service pack from cd. so i have to copy some file from cd to linux directory. Can any body help me what command to use access from cd and copy file. Thanks sam71 (2 Replies)
Discussion started by: sam71
2 Replies

10. UNIX for Dummies Questions & Answers

Need help to access/mount so to access folder/files on a Remote System using Linux OS

Hi I need to access files from a specific folder of a Linux system from an another Linux System Remotely. I know how to, Export a folder on One SCO System & can access the same by using Import via., NFS in the Sco Unix SVR4 System using the scoadmin utility. Also, I know to use mount -t ... (2 Replies)
Discussion started by: S.Vishwanath
2 Replies
Login or Register to Ask a Question