Just sharing something neat I learned today about Linux…

In Windows, I used to do this a lot:
– Be at a command prompt, in some directory, e.g.: C:\my files\more files
– When I need to see that same folder in the Windows GUI, I’d type: start . (note the period, meaning “this directory”)
– The Windows file manager would open in a new window, focused on that same folder as the path.

I realized today I didn’t know how to do that in Linux (I’m on Ubuntu) so I searched around and found the xdg-open command.

The man page for xdg-open says:

xdg-open opens a file or URL in the user’s preferred application. If a URL is provided the URL will be opened in the user’s preferred web browser.

At any terminal prompt, I type something like:

xdg-open .

or xdg-open ~/Documents

And boom! A new KDE Dolphin files window appears, focused on that path.

or this works too, but with a browser:

xdg-open http://eff.org

Rock and/or roll!

    • perishthethought@lemm.eeOP
      link
      fedilink
      English
      arrow-up
      8
      ·
      10 months ago

      I totally did, yes:

      alias xo='xdg-open $1 &>/dev/null'

      … since it always has some odd output when I run it here on my pc.

    • palordrolap@kbin.social
      link
      fedilink
      arrow-up
      6
      ·
      10 months ago

      Some systems already have this implemented. For example, on my machine open is /usr/bin/open which links to /etc/alternatives/open which in turn currently points at /usr/bin/xdg-open.

      • Dehydrated@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        10 months ago

        I’ve seen this on a few Linux distros. MacOS also has something similar, not based on XDG but it works really well. It also uses the open command.

  • marty_relaxes@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    15
    ·
    edit-2
    10 months ago

    xdg-open is very nifty, especially due to its ubiquitousness on a variety of distributions. You can even have a look inside to see that it is actually a shell script yet again invoking other ‘opening’ scripts in the background!

    I wrote a little bit about it and an alternative to it called mimeo not too long ago. That one can even open things by advanced filters such as regexes. So you could e.g. open https://eff.org in Firefox and http://localhost:3000 in a different application or other advanced shenanigans - though I’ve never used such advanced features much.

  • merthyr1831@lemmy.world
    link
    fedilink
    English
    arrow-up
    10
    ·
    10 months ago

    <3 XDG, bringing so much utility and cross-compatibility to Linux regardless of your distro and window manager

  • abuttandahalf@lemmy.ml
    link
    fedilink
    arrow-up
    6
    ·
    10 months ago

    xdg-open is one of the most used commands on my system. Video files, movies, pdfs, etc if I want to use the default application to open anything I use it. No need to memorize each application’ commands.

  • astrsk@kbin.social
    link
    fedilink
    arrow-up
    5
    arrow-down
    1
    ·
    10 months ago

    Now you know about the command and can alias it to whatever floats your boat!

    ‘open .’
    ‘exhume /my/file’
    ‘liberate my.site’

  • palordrolap@kbin.social
    link
    fedilink
    arrow-up
    2
    ·
    10 months ago

    Users of GNOME-derived window managers might also want to look into the gio command that abstracts a lot of GUI things through the command line. Most of the functionality duplicates more basic commands, but these use the GUI’s API / behaviour where possible.

    The best example might be gio trash which can delete things to the desktop Rubbish/Recycle/Trash bin rather than vanish them completely as rm does.

    A pity there’s no xdg- wrapper that encompasses gio and whatever KDE and others do though. Maybe that’ll happen one day.