If you’re used to the convenient ‘start’ command at the command prompt in Microsoft Windows, you’re likely to be a little disappointed not having the same functionality in Linux. But it need not be!
What Is start?
If you have used Microsoft Windows for a long time, you likely have found some shortcuts which simplify your work. One such super-handy shortcut is to use the start command at the Command Prompt in Windows.
Start is extremely versatile. You can type
start . to open a directory browser window right at the location where you are in the command prompt (the current directory). You can also just type
start notepad, and it will open the notepad application for you, and so on. You can even do things like
start mypdf.pdf, and it will open your default-type-assigned application for opening PDF files! Handy.
Then you move to Linux and expect the same great functionality to be there. But not so:
Start is not a default command in Linux. Still, Linux, much more so than Microsoft Windows, allows us to tweak our systems just the way we like them, even to near-infinity. Linux offers control where Microsoft does not. So, let’s implement our own start.
Re-implementing start on Linux!
Re-implementing start on Linux is easier then you think. Here are two methods. The first one is likely to work more universally on various Linux distributions, whereas the second is more Linux Mint and Ubuntu focused.
The first one uses the
xdg-open. Two commands are needed to re-implement
sudo apt install xdg-utils echo "alias start='xdg-open'" >> ~/.bashrc
Note: if you use Fedora, RedHat, or Centos instead of a Debian-based distribution, you may use
sudo yum install xdg-utils instead of the first line.
The first command will install the
xdg-utils package, enabling us to use the command
xdg-open. It is likely that
xdg-utils is already installed on your system, and trying to do so again will not damage the operating system in any way.
The second command adds an alias to our personal Bash startup script (the hidden file
~/.bashrc) in which
xdg-open is called whenever
start is executed at the command line. Note one could also type
xdg-open, but I much prefer the shorter and more familiar
After making these changes, exit your shell and re-open it. You should now be able to use
start in – for all intents and purposes – the same manner as you would in Microsoft Windows:
There may be some minor differences in operation; for example, if you execute a command like
start text.txt where such a file exists, a file manager with that file highlighted (requiring an additional double click) may open instead of opening the assigned application.
There are minor differences between
exo-utils (described below) in this way, and it depends on your underlying desktop window manager and it’s file type association settings also.
Test what works best for you, and set correct file type associations in your operating system to maximize the minor differences. You can do so by right-clicking a file and selecting options alike to Open With > Other Application > selecting an application and making it default. There may also be a file type configuration screen available in your Linux Distribution.
Note that the first time you run commands this way you may be presented with a dialog similar to the following:
In it, simply select your favorite file manager. For more information on how to do this and what sort of options are available here, you may like to review our article Swapping File Managers in Mint 20
If somehow you ran into issues, or you are using Linux Mint or Ubuntu and would like to try another possible solution, you can try this alternative solution which uses
exo-utils, a package originally attached to the
xcfe desktop window manager, but also usable on, or in conjunction with, other windows managers!
For our second solution, two commands are needed to re-implement
sudo apt-get install exo-utils echo "alias start='exo-open --launch FileManager'" >> ~/.bashrc
The first command installs the
exo-utils, in a similar fashion to our install of
xdg-utils. The second command will add the line
alias start='exo-open --launch FileManager' to
~/.bashrc again in a similar fashion as our first solution. The command required here is slightly more complex, but things work in exactly the same way.
start available in Linux, especially when you tend to use the terminal command line a lot, makes the blend between the text-based terminal and the desktop windows manager definitively better.
Once you use the solution for a while, different ways of using it will become more apparent, and your computer use efficiency and operator skills will significantly improve.