mls - list directory contents and translate percent codes in filenames


  mls <-ls options> <-ls arguments>


mls translates percent codes in filenames into their actual characters. This translation is for display only; the filenames are not changed in any way. mls is a wrapper for the ls command that translates percent codes in filenames into their actual characters. Percent codes are used to encode characters not allowed in such things as URLs. If a filename contains percent-coded characters, it can be difficult to make sense of the filename.

mls makes the following translations:

    Percent Code        Character
    ------------        ---------
        %20             space                   " "
        %21             exclamation point       "!"
        %23             pound, octothorpe       "#"
        %24             dollar sign             "$"
        %26             ampersand               "&"
        %27             single quote            "'"
        %28             left parenthesis        "("
        %29             right parenthesis       ")"
        %2A             asterisk                "*"
        %2B             plus sign               "+"
        %2C             comma                   ","
        %2D             minus sign              "-"
        %2E             period                  "."
        %2F             slash                   "/"
        %3A             colon                   ":"
        %3B             semicolon               ":"
        %3D             equals sign             "="
        %3F             question mark           "?"
        %40             at-sign                 "@"
        %5B             left square bracket     "["
        %5D             right square bracket    "]"

Percent codes are most often given in hexadecimal, which is the form used in the table above. There are additional percent codes that may be given, but this table lists the ones have been encountered by the author. Others will be added as needed.


mls takes no options of its own. However, any options or arguments given to mls will be passed directly to ls.


Wayne Morrison,


Copyright 2011 Wayne Morrison

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.