Re: how to expand ~ in a filepath
Hécate via Haskell-Cafe <[email protected]> Tue, 22 Jul 2025 14:23:04 +0200
| Newsgroups | gmane.comp.lang.haskell.cafe |
|---|---|
| Message-ID | <[email protected]> |
With GNU bash, version 5.2.37(1)-release, `~foo` (provided that foo is a user) is indeed expanded to the user's home directory. Cheers, Hécate Le 22/07/2025 à 14:17, Mig Mit a écrit : > There is no “should” here. It might be what you want, but it's not a universal standard. In Bash, “~foo” is not expanded. > > Sent from my iPad > >> On 2025. Jul 22., at 15:13, Richard O'Keefe <[email protected]> wrote: >> >> But it's not just ~/ that should be expanded. >> All four of "~" "~/bar" "~foo" and "~foo/bar" should be expanded by a >> tilde-expander. >> >>> On Tue, 22 Jul 2025 at 03:06, Brandon Allbery <[email protected]> wrote: >>> >>> There's also https://github.com/xmonad/xmonad-contrib/blob/master/XMonad/Prelude.hs#L135-L156 although it also does a few other things. >>> >>>> On Mon, Jul 21, 2025 at 7:57 AM Tristan Cacqueray via Haskell-Cafe <[email protected]> wrote: >>>> >>>> >>>> Hello, unfortunately there is no "expandHomePath" or "realpath" helpers >>>> in the standard libraries. Searching for "FilePath -> IO FilePath" in >>>> hoogle shows an implementation in the hledger project: >>>> https://hackage-content.haskell.org/package/hledger-lib-1.43.2/docs/Hledger-Utils-IO.html#v:expandHomePath >>>> >>>> … which check if the path begins with "~/", and replace that with the >>>> output of "getHomeDirectory" >>>> >>>> -Tristan >>>> >>>> On Mon, Jul 21, 2025 at 07:19 PICCA Frederic-Emmanuel wrote: >>>>> Hello, I am trying to open and read the content of this kind of filepath. >>>>> >>>>> ~/debian/changelog >>>>> >>>>> So is there a prefered way to expand the ~ into the real $HOME. >>>>> >>>>> thanks for your help >>>>> >>>>> Frédéric >>>>> >>>>> >>>>> Classification de confidentialité SOLEIL >>>>> >>>>> Ce message et ses pièces jointes peuvent contenir des informations soumises à des règles de diffusion : >>>>> >>>>> * P (Public) : Diffusion libre y compris à l'extérieur de SOLEIL. >>>>> * I (Interne) : Diffusion libre au sein de SOLEIL, ne doit pas être communiqué à l’extérieur sauf mention spécifique. >>>>> * C (Confidentiel) : Diffusion restreinte aux personnes autorisées, internes ou externes. Le partage nécessite l'accord de la hiérarchie. >>>>> * S (Sensible) : Accès restreint aux seuls destinataires. Partage non autorisé. >>>>> >>>>> Les informations contenues dans cet e-mail sont la propriété de SOLEIL. Si vous n'êtes pas le destinataire prévu, merci de nous en notifier et de ne pas utiliser, copier ou distribuer les informations qu'il contient. >>>>> _______________________________________________ >>>>> Haskell-Cafe mailing list >>>>> To (un)subscribe, modify options or view archives go to: >>>>> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe >>>>> Only members subscribed via the mailman list are allowed to post. >>>> _______________________________________________ >>>> Haskell-Cafe mailing list >>>> To (un)subscribe, modify options or view archives go to: >>>> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe >>>> Only members subscribed via the mailman list are allowed to post. >>> >>> >>> -- >>> brandon s allbery kf8nh >>> [email protected] >>> _______________________________________________ >>> Haskell-Cafe mailing list >>> To (un)subscribe, modify options or view archives go to: >>> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe >>> Only members subscribed via the mailman list are allowed to post. >> _______________________________________________ >> Haskell-Cafe mailing list >> To (un)subscribe, modify options or view archives go to: >> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe >> Only members subscribed via the mailman list are allowed to post. > _______________________________________________ > Haskell-Cafe mailing list > To (un)subscribe, modify options or view archives go to: > http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe > Only members subscribed via the mailman list are allowed to post. -- Hécate ✨ 🐦: @TechnoEmpress IRC: Hecate WWW: https://glitchbra.in RUN: BSD _______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.