cp: cannot access


 
Thread Tools Search this Thread
Operating Systems Solaris cp: cannot access
# 1  
Old 07-27-2012
cp: cannot access

Hi all,

I have this statement:
Code:
cp `ls -lrt |awk '{if($6=="Feb") print $9}'|wc -l` /smartapp/reports/archive_jan_feb_march/

However it fails with:
Code:
cp: cannot access 948

The owner for this script is not a concern, May I know which part went wrong?

Last edited by DukeNuke2; 07-29-2012 at 03:57 AM..
# 2  
Old 07-27-2012
Hi,

Because there is no file with the name 948, try it without the "|wc -l";

Code:
cp `ls -lrt |awk '{if($6=="Feb") print $9}'` /smartapp/reports/archive_jan_feb_march/

Regards

Dave
# 3  
Old 07-27-2012
Firstly, you parse ls. This will fail with filenames containing whitespace. Then it pipe it to wc so you'd just get a count. Seems you've 948 files from Feb, probably..

cp 948 /smartapp/reports/archive_jan_feb_march/ won't work if you've no file named 948. Likely, you would want at least something like

Code:
ls -lrt | awk '$6 == "Feb" { print $9 }' | while read file
do
    cp "$file" /smartapp/reports/archive_jan_feb_march/
done

which still suffers from errors of white space.

with bash you can do something like this.

Code:
touch -t 201201010000 start
touch -t 201204010000 end

for f in *; do
  if [[ $f -nt start ]] && [[ $f -ot end ]]; then
    cp "$f" /smartapp/reports/archive_jan_feb_march/
  fi
done

# 4  
Old 07-27-2012
awk '{if($6=="Feb") print $9}'
returns all files modified in February.
I think the problem is in 'wc -l'

edit: guess I'm too slow, oh well.
# 5  
Old 07-29-2012
dear all thanks for your replay

i have tired following code
Code:
cp `ls -lrt  *.txt | awk  '{if($6 == "Feb") print $9}'` /smartapp/reports/archive_jan_feb_march/

it copies the files but it copies only today's files not the month of Feb.
please help as soon as possible.
# 6  
Old 07-29-2012
Given you have a find installed compatible to
Code:
find (GNU findutils) 4.4.2

that allows for the -newerXY test, try
Code:
find .   -newermt "12-07-27" ! -newermt "12-07-29" -exec cp {} /destdir +

You may have to fiddle around with the X char in -newerXY, the date strings, and also with the cp params. Good luck!
# 7  
Old 07-29-2012
Quote:
Originally Posted by neutronscott
with bash you can do something like this.

Code:
touch -t 201201010000 start
touch -t 201204010000 end

for f in *; do
  if [[ $f -nt start ]] && [[ $f -ot end ]]; then
    cp "$f" /smartapp/reports/archive_jan_feb_march/
  fi
done

Creating sentinels with touch is a nice approach, imo. A lot less messy and less error prone than trying to parse ls output (whose date format is locale dependent).

The -nt and -ot tests will also work with ksh.

For a more portable approach, find with -newer start and ! -newer end should work nicely. pax could then be used to handle all the copying without having to resort to many cp invocations.

Code:
find . -type f -name '.*txt' -newer start ! -newer end | pax -rw "$dest"

If recursing into subdirectories is undersirable, -maxdepth can be used. If not available, a slightly more cumbersome use of -prune can do the job.

Regards,
Alister

---------- Post updated at 10:37 AM ---------- Previous update was at 10:28 AM ----------

Quote:
Originally Posted by RudiC
Given you have a find installed compatible to
Code:
find (GNU findutils) 4.4.2

that allows for the -newerXY test, try
Code:
find .   -newermt "12-07-27" ! -newermt "12-07-29" -exec cp {} /destdir +

You may have to fiddle around with the X char in -newerXY, the date strings, and also with the cp params. Good luck!
To my knowledge, all implementations of find which support -exec ... + require {} to be the word immediately preceding +.

-exec cp {} /destdir + will not work with most (if not all) implementations. If using GNU coreutils, cp can be made to work with the -t option.
Code:
-exec cp -t /destdir {} +

Regards,
Alister
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. 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

5. 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

6. 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

7. 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

8. 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

9. Shell Programming and Scripting

cp: cannot access

Hi All, I have the following script, where I am copying a list of files from one location to another location. The permissions, owners are fine. Why i am getting cp: cannot access error when i run this script. But the cp works at command prompt... files="home/file.lst" for file in `cat $files`... (4 Replies)
Discussion started by: nguda
4 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