Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I accidentally typed cpp Scriptname.py DestinationDirectory, intending to copy the Python script into the folder.

I realized afterward that I should have used cp, but now my Python script is completely gone. I have tried the locate command, but it says that it's still present in my user directory. When I type ls in my user directory, it is nowhere to be found.

What are my options here?

Edit: Here is an exact replica of what I did, showing how the script 'MYSCRIPT.py' disappears from the home directory.

vav7:~ tuc40953$ ls
 Desktop            Dropbox         Movies         New.java             
 Public         scripts
Documents       Library         Music           Peptoids      Theultimatescript.py
Downloads       MYSCRIPT.py     New.class       Pictures        rename.py
vav7:~ tuc40953$ clear

vav7:~ tuc40953$ cpp MYSCRIPT.py Desktop/Peptoids/Final-Structures/MyScript/
cc1: fatal error: opening output file Desktop/Peptoids/Final-Structures/MyScript/: Is a directory
compilation terminated.
vav7:~ tuc40953$ cpp Desktop/Peptoids/Final-Structures/MyScript/ MYSCRIPT.py 
cc1: error: Desktop/Peptoids/Final-Structures/MyScript/: No such file or directory
 vav7:~ tuc40953$ ls
Desktop         Dropbox         Music           Peptoids          Theultimatescript.py
Documents       Library         New.class       Pictures            rename.py
 Downloads      Movies          New.java        Public             scripts
share|improve this question
See these posts for info on attempting to recover a deleted file – Michael Mrozek Apr 10 '12 at 19:35
@IgnacioVazquez-Abrams I also tried find...Sorry I forgot to mention that. – ironcyclone Apr 10 '12 at 20:10
Dammit, now that I know about this I'm bound to make the same mistake myself, at the earliest possible convenience. But why does cpp clobber the target if compilation is unsuccessful? – l0b0 Apr 11 '12 at 9:51
@Gilles I apologize for the repost, I did not know about this site when I posted on the apple site. – ironcyclone Apr 12 '12 at 0:35

There are few ways to recover your file, one of which is using testdisk and/or photorec. I'd advice you to attach your harddrive to a different computer and mount the partition in read-only mode before doing that.

share|improve this answer
extundelete has saved me before - Install (if the deleted files are on a different partition), remount read-only, and restore. – l0b0 Apr 11 '12 at 9:56

Actually, your problem was you've misplaced a SPACE between MyScript/ and MYSCRIPT.py:

cpp Desktop/Peptoids/Final-Structures/MyScript/ MYSCRIPT.py

— Namely that killed your script file.

So, your options now are either re-writing your script from scratch or using Mac OS X undelete software. To increase chances of recovery you should had powered off your system as soon as possible since every file operation might messed up the content of your unlinked script.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.