Question: How do I open a shell prompt or gnome-terminal at the current location while browsing directories and files via nautilus file manager? I'd like to see Open Terminal / Prompt here option added to my right click menu. How do I open command prompt in a single selected directory or otherwise in current directory?
Answer: Nautilus can execute script that can open a gnome-terminal at the current location or selected directory location. All such scripts will be available via right click menu option.
Nautilus Scripts
Nautilus is the official file manager for the GNOME desktop. It has ability to run add-on scripts written in any scripting language (or binary file) without a problem. All add-on scripts must be created and stored at ~/.gnome2/nautilus-scripts ($HOME/.gnome2/nautilus-scripts) location.
Create Open Terminal Here (Open Shell Prompt Here) Shell script
Create file as follows using gedit text editor:
$ gedit "$HOME/.gnome2/nautilus-scripts/Open Terminal Here"
Append shell script code:
#!/bin/bash # From Chris Picton # Replaces a Script by Martin Enlund # Modified to work with spaces in path by Christophe Combelles # This script either opens in the current directory, # or in the selected directory base="`echo $NAUTILUS_SCRIPT_CURRENT_URI | cut -d'/' -f3- | sed 's/%20/ /g'`" if [ -z "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" ]; then dir="$base" else while [ ! -z "$1" -a ! -d "$base/$1" ]; do shift; done dir="$base/$1" fi gnome-terminal --working-directory="$dir"
NAUTILUS_SCRIPT_CURRENT_URI variable gives current location for directory. NAUTILUS_SCRIPT_SELECTED_FILE_PATHS sets a newline-delimited paths for selected files.
Save and close the file. Now, setup permissions, enter::
$ chmod +x "$HOME/.gnome2/nautilus-scripts/Open Terminal Here"
And you are done. Open nautilus file manager, select directory > Right Click > Scripts > Open Terminal Here:
And terminal will open at sg1 directory:
Further readings:
Featured Articles:
- 20 Linux System Monitoring Tools Every SysAdmin Should Know
- 20 Linux Server Hardening Security Tips
- My 10 UNIX Command Line Mistakes
- Linux: 20 Iptables Examples For New SysAdmins

- 25 PHP Security Best Practices For Sys Admins
- The Novice Guide To Buying A Linux Laptop
- 10 Greatest Open Source Software Of 2009
- Top 5 Email Client For Linux, Mac OS X, and Windows Users
- Top 20 OpenSSH Server Best Security Practices
- Top 10 Open Source Web-Based Project Management Software
- Top 5 Linux Video Editor Software
Facebook it - Tweet it - Print it -





{ 25 comments… read them below or add one }
It’s an additional “#” at the end of the first line. You must remove it or the script doesn’t work.
Thanks for the heads up. The faq has been updated.
Another option is to just install the nautilus extension, nautilus-open-terminal.
Been wanting this. Thanks!
K.I.S.S.
sudo aptitude install nautilus-open-terminal
Also take a look at Nautilus Actions for a GUI approach to extending Nautilus.
The Scripts option will only appear in the Nautilus File menu and Right click menu if there are scripts already present in the $HOME/.gnome2/nautilus-scripts/ directory. If this is your first script, in that directory, you will need to logout of X Windows and then login again to get Nautilus to recognize that scripts are present and add the Scripts option to its menus.
Thanks! Works Perfectly in OpenSolaris Indiana
Nice, but why don’t you just use $PWD ?
Works fine on latest ubuntu, (8.10), as an added bonus, it’ll work on fuse mounted shares(ftp,ssh,smb…)
Hi, have I missed something or could you not just open Synaptic and add “nautilus-open-terminal”.
Worked for me, as they say :)
tnx its really handy..
Very nice.
Though I wish I could add a button to the menu bar to just open the terminal.
There’s an app like that for the mac, and it just saves you the time to select the folder first and go to a sub-menu.
Anyone know how to replicate the nautilus-open-terminal functionality but with Shutdown and Log Off options for the session?
Thanks.
But how can one add a menu button, or, even better, create a keyboard shortcut?..
simply put the command ‘gnome-terminal’ in a text file inside the nautilus-script folder.set execute permission on.thats all.
Thank you so much !
sincerely, germán.
Thanks so much for the great tutorial — worked like a charm on my Ubuntu system.
can this script modified to open different terminals, for multicore machines. as one terminal executes its all in cpu1, and the other executes all in cpu2
FYI, on Ubuntu 10.04.1 64-bit, I had to reboot to pick up any changes to Nautilus.
You can this command nautilus -q after chances so you don’t have to reboot or logout.
Thank you very much, work immediatly on Ubuntu 11.10 with gnome 3.
Nice trick… thanks
Awesome, thank you! For some reason, one directory I have here is named “cd ..”. I have no idea how that came about. Of course, with the Shell you can’t navigate to it. But from Nautilus I could and then I opened the Shell from there – thanks to your script. Very helpful!
Mega thanks.
Worked like a charm, THANKS!
For the really non-coder user, there is a point-n-click way to make the script:
1. Go to the Home folder, click View>Show Hidden Files from the menu.
2. Go into the .gnome2/nautilus-scripts/ folder
3. Right-click > Create Document > Empty File
4. Rename the file to “Open Terminal Here”
5. Open the file in simple text editor.
6. Copy-paste all the code given above in here. Save and close and go back to the folder.
7. On the file again, Right-click > properties , see the “Permissions” tab, check ON the “Allow executing file as program” option, and click on Close.
–Now it should work – on any folder, right-click and you’ll see the Scripts > Open Terminal Here option.