Announcement

Collapse
No announcement yet.

Command Line improvement for Batch Conversions and File Rename

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Requested Command Line improvement for Batch Conversions and File Rename

    In Windows the character "#" is a valid path and file name character. In Version 4.54 for command line options, the character # is used to signify a number substitution when you are converting (using the /convert= argument). When batch converting, this causes havoc when the path or the file name contains a # and produces undesired results. When the # is in the path, you will get as many folders as you have image files to convert with one image file per folder. When a # is in the image file name the # will be substituted with a number and written out. The only way to get around this is to substitute a "$#" for the # in the path or file name. There are several issues to the process.

    In order to avoid this # to number substitution a programmer must design their code or script to check every path and file to ensure they do not contain a # in the path or file name and then make a substitution of "$#" in that string. This adds enormous complexity to software development.

    More over there is no solution for a command line batch conversion that has a file list that contains the files for conversion where the image files have a # in the name, for example:

    “ /filelist=""D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!!ResizeList.txt"" /ini=""C:\!ini2048"" /advancedbatch /convert=""D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!conv\*.jpg"""

    In the /filelist= where the contents of the text file listing the files for conversion are:

    D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!o\PIC#0001.jpg
    D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!o\PIC#0002.jpg
    D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!o\PIC#0003.jpg
    D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!o\PIC#0004.jpg

    Because your software substitutes a number for the # when writing out the converted file it produces the following modified file names with the # to number substitution:

    D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!conv\PIC10001
    D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!conv\PIC20002
    D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!conv\PIC30003
    D:\ZZTestn\Tstn 4 Errors in Irfanview\!Tstn MAX with Set Numbers\Baby Pics - At Beach\!conv\PIC40004

    Since the /convert= argument contains "\*.jpg" as the placeholder for converted file names there is nowhere to place the $# in the code.


    This was not an issue with prior versions. For example V4.27 did not have this substitution.


    Therefore please consider the following request to improve your command line options:

    Increase your command lines to include (as an example):
    "/rename=" to signify renaming of the batch files
    "/convertrename=" to signify convert and rename of the batch files.
    AND revert back to your standard of having "/convert=" signifying conversion only, no rename.

    This improvement would bring your command line into alignment with your Windows app interface that has those 3 options and it would then conform to Windows naming conventions.
    Last edited by TJTex; 23.06.2020, 06:39 PM.
Working...
X