Filebot data location

Support for Windows users
Post Reply
ChefGregS
Posts: 99
Joined: 30 Mar 2016, 11:14

Filebot data location

Post by ChefGregS »

I am looking for the file that keeps the format information. Of course, only if I can actually read it. If not, then the location won't matter. :) I had to re-install windows and Filebot lost all my work. One serious pain in the ass about installing via windows store...I can't tell it where to install!!!!! I would NEVER have it install on the C drive and would never allow internal data files (logs, formats, history, etc..) to be kept on the system drive.

Thus, this could also serve as a feature request. Please add options to save Filebot data. And allow it to be saved anywhere the user wants. This way it can be reloaded in the case of forced re-install or other issues. Sucks not having my history, also.

- Greg
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Filebot data location

Post by rednoah »

See FAQ for details. It'll tell you where you can find all application data files an various platforms.

You won't be able to read application preferences, but the history is stored in an easy to read XML file.

Windows Store applications are required to keep all their application files in a predifined location that is decided by Windows.
:idea: Please read the FAQ and How to Request Help.
ChefGregS
Posts: 99
Joined: 30 Mar 2016, 11:14

Re: Filebot data location

Post by ChefGregS »

So, the HISTORY at least could be dropped into the new install.....had I been able to save it before hand.. lol UGH! Odd to me seeing my history now at 7 files when it was over 33,000 a few weeks ago! lol

Any chance on that EXPORT or SAVE feature?? For history, prefs, presets, and formats? Just curious.. Would be nice to have a back up or 2...at least for me. heh

Greg
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Filebot data location

Post by rednoah »

Yes, the History has Import / Export buttons that you can use to Import / Export your History.

Exporting / Importing preferences and settings is currently only supported via filebot -script command-line calls.

Ideally, things should be synced with your Microsoft Account auto-magically, but I haven't been able to figure this one out yet.
:idea: Please read the FAQ and How to Request Help.
ChefGregS
Posts: 99
Joined: 30 Mar 2016, 11:14

Re: Filebot data location

Post by ChefGregS »

Ok.. couldn't you also have the prefs/settings (Formats) save to a location of the users choice via button or even allow a setting of time. Save every X days? Format of the save wouldn't even matter as it would literally just be as a safety backup. If the app has to be restored at some point we could then click to IMPORT all our settings.

Anyway, like I stated before, just a thought as I personally have had to reinstall 3 times over the last year... Every time I think I have everything perfect...and then tweak a bit more while learning new things... and of course, FORGET to copy/paste my formats to a text file....something drastic happens and I have to reinstall everything.

Greg
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Filebot data location

Post by rednoah »

I can't think of a place in the UI where such a button would make logical sense. I could use F11/F12 keyboard shortcuts but then nobody would ever use or find this feature.

You can regularly backup your settings using these commands (e.g. by using CMD or Windows Scheduler):
viewtopic.php?f=3&t=4205


EDIT:

For now, just create a CMD script like this, so you can backup your settings anytime just by double-clicking the CMD file:

Code: Select all

filebot -script fn:preferences --output C:/MyFileBotPrefsFolder
:idea: Please read the FAQ and How to Request Help.
ChefGregS
Posts: 99
Joined: 30 Mar 2016, 11:14

Re: Filebot data location

Post by ChefGregS »

I don't do much command line stuff anymore... back in the days of Windows 3.1 I was all about coding and working in the shell. I had so much control in there, my mom bought a really nice Mac computer....and since it didn't have that ability...I told her to get rid of it...and she did.. yeah, I was an idiot! LOL!!!!!! I have gotten lazy since then and rarely do anything in a shell unless I have to. Thus, I don't tend to ever run programs with command line options. Even if I see they are really powerful... I do miss scripting at times. Oh, and btw, I use SAVE feature on any app that gives it to me...many older games do it...using the F11 save function. Use F5 to load. Of course, you could always use the F1 key for info and such... :)

Greg

EDIT: This is what I ran:

Code: Select all

filebot -script fn:preferences --output C:\AppBackups\MyFileBotPrefs
And this is what happened.

Code: Select all

C:\Users\gdswa\Desktop>filebot -script fn:preferences --output C:\AppBackups\MyFileBotPrefs
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.codehaus.groovy.reflection.CachedConstructor$1 (file:/C:/Program%20Files/WindowsApps/PointPlanck.FileBot_4.8.1.0_x64__49ex9gnthnt12/lib/groovy-all.jar) to constructor java.util.prefs.Preferences()
WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.reflection.CachedConstructor$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Export User Preference Node: / to C:\AppBackups\MyFileBotPrefs\gdswa.prefs.xml
C:\AppBackups\MyFileBotPrefs\gdswa.prefs.xml (The system cannot find the path specified)
java.io.FileNotFoundException: C:\AppBackups\MyFileBotPrefs\gdswa.prefs.xml (The system cannot find the path specified)
        at Script1$_run_closure3.doCall(Script1.groovy:23)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at Script1.run(Script1.groovy:42)
        at net.filebot.cli.ScriptShell.evaluate(ScriptShell.java:64)
        at net.filebot.cli.ScriptShell.runScript(ScriptShell.java:74)
        at net.filebot.cli.ArgumentProcessor.runScript(ArgumentProcessor.java:127)
        at net.filebot.cli.ArgumentProcessor.run(ArgumentProcessor.java:29)
        at net.filebot.Main.main(Main.java:116)

Failure (°_°)
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Filebot data location

Post by rednoah »

You may need to manually create the C:\AppBackups\MyFileBotPrefs folder. It might fail if the folder doesn't already exist.
:idea: Please read the FAQ and How to Request Help.
ChefGregS
Posts: 99
Joined: 30 Mar 2016, 11:14

Re: Filebot data location

Post by ChefGregS »

rednoah wrote: 04 May 2018, 03:46 You may need to manually create the C:\AppBackups\MyFileBotPrefs folder. It might fail if the folder doesn't already exist.
I thought the same thing. So I did. It gave the same error. I couldn't find any info on that error... hmmmm

Greg
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Filebot data location

Post by rednoah »

What happens if you open CMD, cd into that folder, and then run this command?

Code: Select all

filebot -script fn:preferences --output .
:idea: Please read the FAQ and How to Request Help.
ChefGregS
Posts: 99
Joined: 30 Mar 2016, 11:14

Re: Filebot data location

Post by ChefGregS »

rednoah wrote: 05 May 2018, 06:36 What happens if you open CMD, cd into that folder, and then run this command?

Code: Select all

filebot -script fn:preferences --output .
Ok... It all seems to be working now. Both that last code AND the script you had me create before. NOTE: The reason for the delay in getting back to you and maybe one reason it now works....I had to do a full re-install of Windows 10 a couple weeks ago. Many things working again that had NOT been working before..

I still get an error however it creates the xml file just fine. Here is what it does (the script AND the line in that folder via powershell):

Code: Select all

PS D:\AppBackups\MyFileBotPrefs> filebot -script fn:preferences --output D:\AppBackups\MyFileBotPrefs
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.codehaus.groovy.reflection.CachedConstructor$1 (file:/C:/Program%20Files/WindowsApps/PointPlanck.FileBot_4.8.1.0_x64__49ex9gnthnt12/lib/groovy-all.jar) to constructor java.util.prefs.Preferences()
WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.reflection.CachedConstructor$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Export User Preference Node: / to D:\AppBackups\MyFileBotPrefs\gdswa.prefs.xml
Print User Preference Node: /
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
<preferences EXTERNAL_XML_VERSION="1.0">
  <root type="user">
    <map/>
    <node name="net">
      <map/>
      <node name="filebot">
        <map>
          <entry key="getting.started" value="1"/>
          <entry key="dialog.open.folder" value="M:\Movies HD\Abraham Lincoln - Vampire Hunter (2012) 3D\Abraham Lincoln - Vampire Hunter [2012, R, 94 Min] [Benjamin Walker, Dominic Cooper, Anthony Mackie] [Action, Fantasy, Horror] [3D, 1080p, AAC@2ch].mp4"/>
        </map>
        <node name="ui">
          <map>
            <entry key="window.x" value="825"/>
            <entry key="window.y" value="30"/>
            <entry key="window.width" value="2193"/>
            <entry key="window.height" value="650"/>
          </map>
          <node name="rename">
            <map>
              <entry key="rename.format.episode" value="Z:/TV Series/{n.upperInitial().colon(' -').replace('?', '!') }/{ any{"Season $s $sy"}{'Specials'} }/{n.upperInitial().colon(' -').replace('?', '!') } - {s00e00} - [{airdate}] - {t.colon(" - ").replace('?', '!') }"/>
              <entry key="rename.last.format.state" value="Episode"/>
              <entry key="format.sample.movie" value="{"@type":"Movie","year":2012,"imdbId":1611224,"tmdbId":72331,"language":"en","id":72331,"name":"Abraham Lincoln: Vampire Hunter","aliasNames":[]}"/>
              <entry key="format.sample.file" value="M:\Movies HD\Abraham Lincoln - Vampire Hunter (2012) 3D\Abraham Lincoln - Vampire Hunter [2012, R, 94 Min] [Benjamin Walker, Dominic Cooper, Anthony Mackie] [Action, Fantasy, Horror] [3D, 1080p, AAC@2ch].mp4"/>
              <entry key="rename.format.movie" value="{vf == /2160p/ ? 'L:/Movies 4K' : vf =~ /1080p|720p/ ? 'M:/Movies HD' : 'M:/Movies'}/{n.upperInitial().colon(' - ').replace('?', '!')} {' (' + fn.matchAll(/extended|uncensored|remastered|unrated|uncut|directors.cut|special.edition|redux/)*.upperInitial()*.lowerTrail().sort().join(', ').replaceAll(/[._]/, " ") + ')'} {any{' Part '+pi}{null}} ({y}) {fn.match(/3D/)}/{n.upperInitial().colon(' - ').replace('?', '!')} {' (' + fn.matchAll(/extended|uncensored|remastered|unrated|uncut|directors.cut|special.edition|redux/)*.upperInitial()*.lowerTrail().sort().join(', ').replaceAll(/[._]/, " ") + ')'} {any{' Part '+pi}{null}} [{y}, {any{csv('M:/replacecert1.csv').get(certification)}{certification}{"NR"} }, {runtime} Min] {[actors.take(3).join(', ')]} {[genres.take(3).join(', ')]} [{fn.match(/3D/)+', '}{"$vf, $ac@$af"}]"/>
              <entry key="rename.match.mode" value="Opportunistic"/>
              <entry key="rename.language" value="en"/>
              <entry key="rename.episode.order" value="Airdate"/>
              <entry key="dialog.select.repeat" value="false"/>
              <entry key="dialog.select.width" value="942"/>
              <entry key="dialog.select.height" value="741"/>
            </map>
            <node name="format.recent.episode">
              <map>
                <entry key="0" value="Z:/TV Series/{n.upperInitial().colon(' -').replace('?', '!') }/{ any{"Season $s $sy"}{'Specials'} }/{n.upperInitial().colon(' -').replace('?', '!') } - {s00e00} - [{airdate}] - {t.colon(" - ").replace('?', '!') }"/>
                <entry key="1" value="M:/TV Series/{n.upperInitial().colon(' -').replace('?', '!') }/{ any{"Season $s $sy"}{'Specials'} }/{n.upperInitial().colon(' -').replace('?', '!') } - {s00e00} - [{airdate}] - {t.colon(" - ").replace('?', '!') }"/>
              </map>
            </node>
            <node name="format.recent.movie">
              <map>
                <entry key="0" value="{vf == /2160p/ ? 'L:/Movies 4K' : vf =~ /1080p|720p/ ? 'M:/Movies HD' : 'M:/Movies'}/{n.upperInitial().colon(' - ').replace('?', '!')} {' (' + fn.matchAll(/extended|uncensored|remastered|unrated|uncut|directors.cut|special.edition|redux/)*.upperInitial()*.lowerTrail().sort().join(', ').replaceAll(/[._]/, " ") + ')'} {any{' Part '+pi}{null}} ({y}) {fn.match(/3D/)}/{n.upperInitial().colon(' - ').replace('?', '!')} {' (' + fn.matchAll(/extended|uncensored|remastered|unrated|uncut|directors.cut|special.edition|redux/)*.upperInitial()*.lowerTrail().sort().join(', ').replaceAll(/[._]/, " ") + ')'} {any{' Part '+pi}{null}} [{y}, {any{csv('M:/replacecert1.csv').get(certification)}{certification}{"NR"} }, {runtime} Min] {[actors.take(3).join(', ')]} {[genres.take(3).join(', ')]} [{fn.match(/3D/)+', '}{"$vf, $ac@$af"}]"/>
                <entry key="1" value="M:/{vf == /2160p/ ? 'Movies 4K' : vf =~ /1080p|720p/ ? 'Movies HD' : 'Movies'}/{n.upperInitial().colon(' - ').replace('?', '!')} {' (' + fn.matchAll(/extended|uncensored|remastered|unrated|uncut|directors.cut|special.edition|redux/)*.upperInitial()*.lowerTrail().sort().join(', ').replaceAll(/[._]/, " ") + ')'} {any{' Part '+pi}{null}} ({y}) {fn.match(/3D/)}/{n.upperInitial().colon(' - ').replace('?', '!')} {' (' + fn.matchAll(/extended|uncensored|remastered|unrated|uncut|directors.cut|special.edition|redux/)*.upperInitial()*.lowerTrail().sort().join(', ').replaceAll(/[._]/, " ") + ')'} {any{' Part '+pi}{null}} [{y}, {any{csv('M:/replacecert1.csv').get(certification)}{certification}{"NR"} }, {runtime} Min] {[actors.take(3).join(', ')]} {[genres.take(3).join(', ')]} [{fn.match(/3D/)+', '}{"$vf, $ac@$af"}]"/>
                <entry key="2" value="M:/Movies/{n.upperInitial().colon(' -').replace('?', '!')} ({y}) {fn.match(/3D/)}/{n.upperInitial().colon(' -').replace('?', '!')}{' Part '+pi} [{y}, {certification}, {runtime} Min] [{actors.take(3).join(', ')}] [{genres.take(3).join(', ')}] [{fn.match(/3D/)+', '}{' (' + fn.matchAll(/extended|uncensored|remastered|unrated|uncut|directors.cut|special.edition/)*.upperInitial()*.lowerTrail().sort().join(', ').replaceAll(/[._]/, " ") + ')'}{"$vf, $ac@$af]"}"/>
                <entry key="3" value="M:/Movies/{n.upperInitial().colon(' -').replace('?', '!')} ({y})/{n.upperInitial().colon(' -').replace('?', '!')} ({y}){' Part '+pi} [{certification}, {runtime} Min] [{actors.take(3).join(', ')}] [{genres.take(3).join(', ')}] [{fn.match(/3D/)+', '}{' (' + fn.matchAll(/extended|uncensored|remastered|unrated|uncut|directors.cut|special.edition/)*.upperInitial()*.lowerTrail().sort().join(', ').replaceAll(/[._]/, " ") + ')'}{" Part $pi"}{"$vf, $ac@$af]"}"/>
              </map>
            </node>
            <node name="format.recent.music">
              <map/>
            </node>
            <node name="presets">
              <map/>
            </node>
          </node>
        </node>
      </node>
    </node>
  </root>
</preferences>

Done ?(?????)?
- Greg
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Filebot data location

Post by rednoah »

No worries. The WARNING: An illegal reflective access operation has occurred warnings can't be helped right now, but they're just warnings and won't cause any issues for the time being.
:idea: Please read the FAQ and How to Request Help.
Post Reply