mirror of
https://github.com/ytdl-org/ytdl-nightly.git
synced 2024-12-23 13:32:08 +01:00
Add --rm-cache-dir
This commit is contained in:
parent
4e99f48817
commit
052421ff09
@ -76,6 +76,7 @@ import optparse
|
|||||||
import os
|
import os
|
||||||
import random
|
import random
|
||||||
import shlex
|
import shlex
|
||||||
|
import shutil
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
|
||||||
@ -511,6 +512,9 @@ def parseOpts(overrideArguments=None):
|
|||||||
filesystem.add_option(
|
filesystem.add_option(
|
||||||
'--no-cache-dir', action='store_const', const=None, dest='cachedir',
|
'--no-cache-dir', action='store_const', const=None, dest='cachedir',
|
||||||
help='Disable filesystem caching')
|
help='Disable filesystem caching')
|
||||||
|
filesystem.add_option(
|
||||||
|
'--rm-cache-dir', action='store_true', dest='rm_cachedir',
|
||||||
|
help='Delete all filesystem cache files')
|
||||||
|
|
||||||
|
|
||||||
postproc.add_option('-x', '--extract-audio', action='store_true', dest='extractaudio', default=False,
|
postproc.add_option('-x', '--extract-audio', action='store_true', dest='extractaudio', default=False,
|
||||||
@ -844,9 +848,26 @@ def _real_main(argv=None):
|
|||||||
if opts.update_self:
|
if opts.update_self:
|
||||||
update_self(ydl.to_screen, opts.verbose)
|
update_self(ydl.to_screen, opts.verbose)
|
||||||
|
|
||||||
|
# Remove cache dir
|
||||||
|
if opts.rm_cachedir:
|
||||||
|
if opts.cachedir is None:
|
||||||
|
ydl.to_screen(u'No cache dir specified (Did you combine --no-cache-dir and --rm-cache-dir?)')
|
||||||
|
else:
|
||||||
|
if ('.cache' not in opts.cachedir) or ('youtube-dl' not in opts.cachedir):
|
||||||
|
ydl.to_screen(u'Not removing directory %s - this does not look like a cache dir')
|
||||||
|
retcode = 141
|
||||||
|
else:
|
||||||
|
ydl.to_screen(
|
||||||
|
u'Removing cache dir %s .' % opts.cachedir,
|
||||||
|
skip_eol=True)
|
||||||
|
if os.path.exists(opts.cachedir):
|
||||||
|
ydl.to_screen(u'.', skip_eol=True)
|
||||||
|
shutil.rmtree(opts.cachedir)
|
||||||
|
ydl.to_screen(u'.')
|
||||||
|
|
||||||
# Maybe do nothing
|
# Maybe do nothing
|
||||||
if (len(all_urls) < 1) and (opts.load_info_filename is None):
|
if (len(all_urls) < 1) and (opts.load_info_filename is None):
|
||||||
if not opts.update_self:
|
if not (opts.update_self or opts.rm_cachedir):
|
||||||
parser.error(u'you must provide at least one URL')
|
parser.error(u'you must provide at least one URL')
|
||||||
else:
|
else:
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
Loading…
Reference in New Issue
Block a user