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

Frank Schwidom @chw|dom @end|ng |rom gmx@net
Tue Jun 11 22:18:23 CEST 2019


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



More information about the R-help mailing list