[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 425
  • Last Modified:

Need to make this script work in OS X and Linux

Hey guys,

I would like to make this Python script compatible with OS X and Linux. If I lauch the script on OS X.
import os
import sys

#path to file from the first argument (no checking)
fname = sys.argv[1]
#fname = r'E:\\TV Shows\\How I Met Your Mother\\Season 6\\How.I.Met.Your.Mother.S06E18.720p.HDTV.X264-DIMENSION.mkv'
print fname

# Now split the path to the directory and the bare name (better to say it 
# splits the last element of the path and it does not care whether it is 
# a file name or a subdirectory name.
path, barename = os.path.split(fname)
print path
print barename

parent = os.path.normpath(os.path.join(path, '..'))
print "parent directory:", parent

# Create file, delete and recreate it if it exists. This will
# change the date modified status of the Show Name folder
# so you can view your show list by date order.
logname = os.path.join(parent, 'DateMarker.log')
if os.path.isfile(logname):
    os.remove(logname)
logfile = open(logname, 'w')
logfile.write('Episode ' + fname + ' has been created. This is a marker file, to change the date modified status of the show name.')
logfile.close()

Open in new window

Everything works except this part
if os.path.isfile(logname):
    os.remove(logname)
logfile = open(logname, 'w')
logfile.write('Episode ' + fname + ' has been created. This is a marker file, to change the date modified status of the show name.')
logfile.close()

Open in new window


Thanks
0
chipped
Asked:
chipped
  • 2
  • 2
1 Solution
 
clockwatcherCommented:
It seems to work fine for me in linux.   Assuming you have write permissions to the parent directory and permissions to remove DateMarker.log if it exists, I don't see anything obvious in it that would lead me to believe it wouldn't work on a Mac.  What output and error are you getting?  
0
 
chippedAuthor Commented:
Hmmmm, I'll double check.
0
 
peprCommented:
How exactly does it fail?
0
 
peprCommented:
(Sorry, clockwatcher already asked... ;)
0
 
chippedAuthor Commented:
Doh! It was just permissions.
0

Featured Post

Important Lessons on Recovering from Petya

In their most recent webinar, Skyport Systems explores ways to isolate and protect critical databases to keep the core of your company safe from harm.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now