On 2020-02-29 01:27, Fergus Daly wrote:
>> $ rename "anything" "AnyThing" *.ext
>> What I remember as past behaviour now fails, leaving he filename unaltered.
> 
>>> Try it with the '-v' option
> 
> So I did:
> 
> $ touch "This is the test file"
> $ ls -al
> -rw-r--r-- 1    0 Feb 29 08:10 This is the test file
> $ rename -v " the " " The " *
> `This is the test file' -> `This is The test file'
> $ ls -al
> -rw-r--r-- 1    0 Feb 29 08:10 This is the test file
> 
> Filename unaltered, contrary to verbose confirmation.
> Just checking: in DOS Command Prompt box, dir also shows filename unaltered. 
> BTW failure consistent on both FAT32 and exFAT filesystems; but the rename 
> command _works_as_expected_ on NTFS.
How that works will depend on the available VFAT LFN support on that filesystem.

> I get the subtle distinctions between FAT (all versions) and NTFS platforms; 
> but, all the same, the rename command surely worked on *FAT* in the past - I 
> would have noticed if it didn't because I toggle lc <> UC quite a lot.

You're not really giving us much that may help you, about what Windows and
Cygwin releases you're running, whether the file systems are local devices, or
on what type of remote system, what drive (USB 1/2/3/C, CF1/2, full/mini/micro
SD/SDHC/SDXC, makes, models, capacities), underlying formats, and driver types.

IIRC and I may not, you may be able to change case if you jump thru hoops and
also change the underlying 8.3 name at the same time e.g. rename "This is the
test file" to "This is The test file.txt" then "This is The test file"; perhaps
like:

$ rename -v "the test file" "The test file.txt" "This is the test file"
$ rename -v "The test file.txt" "The test file" "This is the test file.txt"

While rename can be useful for multiple files, for single files, and other
simple commands, I use bash filename completion on long file names, and editline
copy/paste to add brace expansions:

        $ mv -v This\ is\ {the\ test\ file,The\ test\ file.txt}
        $ mv -v This\ is\ {The\ test\ file.txt,The\ test\ file}
        $ touch -chr file.{ref,new}
        $ gcc -g -Og -Wall -Wextra -o test{,.c}

Check the type of the target filesystem using available tools to see if anything
changed and/or can be changed. If remote, check that system's filesystem driver
for any changes. From an elevated command prompt try e.g.

> fsutil fsinfo volumeinfo g:
Volume Name :
Volume Serial Number : 0x6d26aae6
Max Component Length : 255
File System Name : NTFS
Is ReadWrite
Not Thinly-Provisioned
Supports Case-sensitive filenames
Preserves Case of filenames
Supports Unicode in filenames
Preserves & Enforces ACL's
Supports file-based Compression
Supports Disk Quotas
Supports Sparse files
Supports Reparse Points
Returns Handle Close Result Information
Supports POSIX-style Unlink and Rename
Supports Object Identifiers
Supports Encrypted File System
Supports Named Streams
Supports Transactions
Supports Hard Links
Supports Extended Attributes
Supports Open By FileID
Supports USN Journal

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

Reply via email to