I have two related questions, both probably (but not necessarily preferentially) accepting the same answer :
- When browsing or exploring the filesystem in a GUI, I want to be able to right click on the empty space between the files, choose a menu item and say 'open terminal in this folder,' optionally as root
- Do the converse when using the terminal, optionally as root
I use Universe with kubuntu but have Debian Lenny running with gnome installed separately, so anything on kde or gnome would work
You can use xdg-open to open files and directories from the command line. I have an alias of
xopen
to make the typing a little easier. Put this in your~/.bashrc
to do that, and to have a root file browser using sudo:It will open the file in the application that would be used if you double-clicked on it. For example, if you named a text file, it would open in gedit. And if you pass it a directory, it will open the file browser. So if I am in my home directory I can do
and the file browser (nautilus for me) will open that directory. Also note that xdg-open will return immediately - the new program is launched as it's own process and you can type in your next command.
To open a terminal from the nautilus file browser, you should install the
nautilus-open-terminal
package. Then you can right click on a folder, or in the blank space below the files, and open a terminal with the path set to that directory. Not sure how to make it a root terminal though - I always just use sudo myself.Terminal to Nautilus
For the terminal side of things, I would just add this to my
~/.bashrc
:Nautilus to Terminal
The nautilus-open-terminal extension that others have mentioned is great for most use, but it does not provide a way to open a root shell. The easiest way for you to get this functionality is to save a script like the following as
~/.gnome2/nautilus-scripts/Open in Terminal (Root)
:A fun variation on this would be to make a GNOME Terminal profile called "root" with a scary red background color, an initial title of "Root Terminal", and the custom shell command
sudo -s
. You'd then use a Nautilus script like this:There's a nautilus script handily packaged in the Ubuntu repositories to do this for you. Click here to install or run the following command.
You may have to restart gnome/nautilus for it to work.
If you already have Ubuntu-tweak installed, you can also just tick the box for nautilus extensions.
Not sure if it's compatible with Lenny, right enough! :-)