Skip to content

Open a file which name contains a tilde

11 messages · Frank Schwidom, Travers Ching, William Dunlap +4 more

#
Hi,

yes, I have seen this package and it has the same tilde expanding problem.

Please excuse me I will cc this answer to r-help and r-devel to keep the discussion running.

Kind regards,
Frank Schwidom
On 2019-06-11 09:12:36, G?bor Cs?rdi wrote:
#
Hi Frank,

I'm hesitant to be "that guy", but in case no one else has brought this up
to you, having files with a tilde in their names (generally but especially
on a linux system, where ~ in file names has a very important special
meaning in some cases, as we know) strikes me as an exceptionally bad
practice anyway. In light of that, the solution with the smallest amount of
pain for you is almost surely to just... not do that. Your filenames will
be better for it anyway.

There is a reason no one has complained about this before, and while I
haven't run a study or anything, I strongly suspect its that "everyone"
else is already on the "no tildes in filenames" bandwagon, so this
behavior, even if technically a bug, has no ability to cause them problems.

Best,
~G
On Tue, Jun 11, 2019 at 8:25 AM Frank Schwidom <schwidom at gmx.net> wrote:

            

  
  
#
Hi Gabriel,

It may be bad practice, but you don't always have control over the file
name.

E.g. if someone shares a file with a tilde in it -- yes it is simple to
rename but it is extra time, and you might not bother to rename a file
without foreknowledge of this bug in the first place.

Even worse, if someone points you to a read only location on a shared
server, you won't even be able to rename the file, and copying might be
prohibitive if it's a large file.

There are also tilde files created automatically by other programs, notably
microsoft office.

Travers




On Tue, Jun 11, 2019 at 9:49 AM Gabriel Becker <gabembecker at gmail.com>
wrote:

  
  
#
Hi Gabriel,

I actually want to make renames over thousands of files. But if I am not able to express the source filename of the rename operation I will not be able to get the work done. Besides the fact that there are issues I think that R is qualified for solving my problem by the method how it can handle long vectors of strings, booleans and also lists.

Kind regards,
Frank
On 2019-06-11 09:49:17, Gabriel Becker wrote:
#
Note that R treats tildes in file names differently on Windows and Linux.
On Windows, it is only replaced if it it at the beginning of the line and
is followed by a forward or backward slash or end-of-line.  On Linux it is
replaced no matter where it is in the text and ~someUser will be replaced
by someUser's home directory (if 'someUser' is a user with a home
directory).

Hence, if you have a Windows machine that can look at the file system on
your Linux machine you can use file.rename on Windows to change the names.
My inclination would be to use a bash script on Linux to change the names,
but if you are not comfortable with bash try the Windows approach.

Bill Dunlap
TIBCO Software
wdunlap tibco.com
On Tue, Jun 11, 2019 at 1:13 PM Frank Schwidom <schwidom at gmx.net> wrote:

            

  
  
#
On 11/06/2019 4:34 p.m., William Dunlap via R-devel wrote:
That's not quite true:  On Linux the bug is in the code that uses 
libreadline, which you don't have to use.  If you just specify
"--no-readline" when you start R, it will be fine on Linux, as far as I 
can see.

I wouldn't choose that as the default way to run R (it's pretty 
irritating not to have readline support), but it is a workaround for 
this bug.

Duncan Murdoch
#
With c76695 in the trunk, we now only tilde expand file names starting
with a tilde also when using readline.

Best
-k

        
#
@ Gabriel:

"Avoid tilde in file names":
Not quite.
A tilde *suffix* is commonly used by *nix editors for backup files
https://unix.stackexchange.com/questions/76189/what-does-the-tilde-mean-at-the-end-of-a-filename
On Wed, Jun 12, 2019 at 2:43 AM Kurt Hornik <Kurt.Hornik at wu.ac.at> wrote:

            

  
  
#
On Wed, Jun 12, 2019, 5:16 AM Paul McQuesten <mcquesten at gmail.com> wrote:

            
I'm aware of that, but that isn't the case that is being discussed, as the
example given clearly had a tilde (and spaces) in the middle of the file.
Backup files witilde suffix does not trigger the bug being discussed. It's
*only* files paths where the tilde is surrounded on both by spaces (or on
the right by the end fo the string) that trigger it.
[1] "a~b"
[1] "a /Users/gabrielbecker b"
[1] "myfile.txt~"
[1] "myfile.txt /Users/gabrielbecker"


All that said I'm really not interested in participating in a flame war
over this. I gave my 2 cents as respectfully as I could, so as of now
please consider my participation  and interest in this thread closed.

Best,
~G

  
  
#
At the risk of looking silly, note that all of this is now largely moot
anyway (or will be with the next release of R), thanks to Kurt Hornik's
fixing of the bug in question (which he announced on this thread prior to
but I read after Paul's).

~G

On Wed, Jun 12, 2019 at 11:51 PM Gabriel Becker <gabembecker at gmail.com>
wrote:

  
  
#
Gabriel,

I apologize. I did not mean to flame, merely to point out a typical usage
of tilde that might have escaped the discussion.
As you say, Kurt's fix makes this all moot.
I also apologize for wasting everyone's time with my spam.

On Thu, Jun 13, 2019 at 2:13 AM Gabriel Becker <gabembecker at gmail.com>
wrote: