[Rd] [R] Open a file which name contains a tilde

Paul McQuesten mcque@ten @end|ng |rom gm@||@com
Wed Jun 12 14:15:16 CEST 2019


@ 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 using wu.ac.at> wrote:

> >>>>> Duncan Murdoch writes:
>
> With c76695 in the trunk, we now only tilde expand file names starting
> with a tilde also when using readline.
>
> Best
> -k
>
> > On 11/06/2019 4:34 p.m., William Dunlap via R-devel 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).
>
> > 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
>
> >>
> >> 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 using gmx.net>
> 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:
> >>>> 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 <[1]schwidom using gmx.net>
> >>>> wrote:
> >>>>
> >>>> 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:
> >>>> > Just in case, have you seen the fs package?
> >>>> > [2]https://fs.r-lib.org/
> >>>> >
> >>>> > Gabor
> >>>> >
> >>>> > On Tue, Jun 11, 2019 at 7:51 AM Frank Schwidom <[3]
> >>> schwidom using gmx.net>
> >>>> wrote:
> >>>> > >
> >>>> > > Hi,
> >>>> > >
> >>>> > > to get rid of any possible filename modification I started a
> >>> little
> >>>> project to cover my usecase:
> >>>> > >
> >>>> > > [4]https://github.com/schwidom/simplefs
> >>>> > >
> >>>> > > This is my first R package, suggestions and a review are
> >>> welcome.
> >>>> > >
> >>>> > > Thanks in advance
> >>>> > > Frank Schwidom
> >>>> > >
> >>>> > > On 2019-06-07 09:04:06, Richard O'Keefe wrote:
> >>>> > > >    How can expanding tildes anywhere but the beginning of a
> >>> file
> >>>> name NOT be
> >>>> > > >    considered a bug?
> >>>> > > >    On Thu, 6 Jun 2019 at 23:04, Ivan Krylov
> >>>> <[1][5]krylov.r00t using gmail.com> wrote:
> >>>> > > >
> >>>> > > >      On Wed, 5 Jun 2019 18:07:15 +0200
> >>>> > > >      Frank Schwidom <[2][6]schwidom using gmx.net> wrote:
> >>>> > > >
> >>>> > > >      > +> path.expand("a ~ b")
> >>>> > > >      > [1] "a /home/user b"
> >>>> > > >
> >>>> > > >      > How can I switch off any file crippling activity?
> >>>> > > >
> >>>> > > >      It doesn't seem to be possible if readline is enabled and
> >>>> works
> >>>> > > >      correctly.
> >>>> > > >
> >>>> > > >      Calls to path.expand [1] end up [2] in R_ExpandFileName
> >>> [3],
> >>>> which
> >>>> > > >      calls R_ExpandFileName_readline [4], which uses
> >>> libreadline
> >>>> function
> >>>> > > >      tilde_expand [5]. tilde_expand seems to be designed to
> >>> expand
> >>>> '~'
> >>>> > > >      anywhere in the string it is handed, i.e. operate on
> >>> whole
> >>>> command
> >>>> > > >      lines, not file paths.
> >>>> > > >
> >>>> > > >      I am taking the liberty of Cc-ing R-devel in case this
> >>> can be
> >>>> > > >      considered a bug.
> >>>> > > >
> >>>> > > >      --
> >>>> > > >      Best regards,
> >>>> > > >      Ivan
> >>>> > > >
> >>>> > > >      [1]
> >>>> > > >
> >>>> [3][7]
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/names.c#L807
> >>>> > > >
> >>>> > > >      [2]
> >>>> > > >
> >>>> [4][8]
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/platform.c#L1915
> >>>> > > >
> >>>> > > >      [3]
> >>>> > > >
> >>>> [5][9]
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-unix.c#L147
> >>>> > > >
> >>>> > > >      [4]
> >>>> > > >
> >>>> [6][10]
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-std.c#L494
> >>>> > > >
> >>>> > > >      [5]
> >>>> > > >
> >>>> [7][11]
> >>>
> https://git.savannah.gnu.org/cgit/readline.git/tree/tilde.c?h=devel#n187
> >>>> > > >
> >>>> > > >      ______________________________________________
> >>>> > > >      [8][12]R-help using r-project.org mailing list -- To
> >>> UNSUBSCRIBE
> >>>> and more, see
> >>>> > > >      [9][13]https://stat.ethz.ch/mailman/listinfo/r-help
> >>>> > > >      PLEASE do read the posting guide
> >>>> > > >      [10][14]http://www.R-project.org/posting-guide.html
> >>>> > > >      and provide commented, minimal, self-contained,
> >>> reproducible
> >>>> code.
> >>>> > > >
> >>>> > > > References
> >>>> > > >
> >>>> > > >    Visible links
> >>>> > > >    1. mailto:[15]krylov.r00t using gmail.com
> >>>> > > >    2. mailto:[16]schwidom using gmx.net
> >>>> > > >    3.
> >>>> [17]
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/names.c#L807
> >>>> > > >    4.
> >>>> [18]
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/platform.c#L1915
> >>>> > > >    5.
> >>>> [19]
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-unix.c#L147
> >>>> > > >    6.
> >>>> [20]
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-std.c#L494
> >>>> > > >    7.
> >>>> [21]
> >>>
> https://git.savannah.gnu.org/cgit/readline.git/tree/tilde.c?h=devel#n187
> >>>> > > >    8. mailto:[22]R-help using r-project.org
> >>>> > > >    9. [23]https://stat.ethz.ch/mailman/listinfo/r-help
> >>>> > > >   10. [24]http://www.r-project.org/posting-guide.html
> >>>> > >
> >>>> > > ______________________________________________
> >>>> > > [25]R-devel using r-project.org mailing list
> >>>> > > [26]https://stat.ethz.ch/mailman/listinfo/r-devel
> >>>> >
> >>>>
> >>>> ______________________________________________
> >>>> [27]R-devel using r-project.org mailing list
> >>>> [28]https://stat.ethz.ch/mailman/listinfo/r-devel
> >>>>
> >>>> References
> >>>>
> >>>> Visible links
> >>>> 1. mailto:schwidom using gmx.net
> >>>> 2. https://fs.r-lib.org/
> >>>> 3. mailto:schwidom using gmx.net
> >>>> 4. https://github.com/schwidom/simplefs
> >>>> 5. mailto:krylov.r00t using gmail.com
> >>>> 6. mailto:schwidom using gmx.net
> >>>> 7.
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/names.c#L807
> >>>> 8.
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/platform.c#L1915
> >>>> 9.
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-unix.c#L147
> >>>> 10.
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-std.c#L494
> >>>> 11.
> >>>
> https://git.savannah.gnu.org/cgit/readline.git/tree/tilde.c?h=devel#n187
> >>>> 12. mailto:R-help using r-project.org
> >>>> 13. https://stat.ethz.ch/mailman/listinfo/r-help
> >>>> 14. http://www.r-project.org/posting-guide.html
> >>>> 15. mailto:krylov.r00t using gmail.com
> >>>> 16. mailto:schwidom using gmx.net
> >>>> 17.
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/names.c#L807
> >>>> 18.
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/platform.c#L1915
> >>>> 19.
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-unix.c#L147
> >>>> 20.
> >>>
> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-std.c#L494
> >>>> 21.
> >>>
> https://git.savannah.gnu.org/cgit/readline.git/tree/tilde.c?h=devel#n187
> >>>> 22. mailto:R-help using r-project.org
> >>>> 23. https://stat.ethz.ch/mailman/listinfo/r-help
> >>>> 24. http://www.r-project.org/posting-guide.html
> >>>> 25. mailto:R-devel using r-project.org
> >>>> 26. https://stat.ethz.ch/mailman/listinfo/r-devel
> >>>> 27. mailto:R-devel using r-project.org
> >>>> 28. https://stat.ethz.ch/mailman/listinfo/r-devel
> >>>
> >>> ______________________________________________
> >>> R-devel using r-project.org mailing list
> >>> https://stat.ethz.ch/mailman/listinfo/r-devel
> >>>
> >>
> >> [[alternative HTML version deleted]]
> >>
> >> ______________________________________________
> >> R-devel using r-project.org mailing list
> >> https://stat.ethz.ch/mailman/listinfo/r-devel
> >>
>
> > ______________________________________________
> > R-devel using r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-devel
>
> ______________________________________________
> R-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>

	[[alternative HTML version deleted]]



More information about the R-devel mailing list