I have this run.sh file, and I've create a symbolic link into my desktop.
When I double-click on it the file the following dialog appearsr
And I have to click on "run" each time. How can I create a link that runs by default?
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It only takes a minute to sign up.
Sign up to join this communityInstead of linking directly to the .sh file create an application launcher as follows:
/path/to/script/idea.sh
Then when you click the launcher a terminal window will open and the command will run in there.
If you don't want to open a terminal to see any output, just use "Application" instead of "Application in Terminal".
You may have to edit the desktop file with something like gedit to add the "Path" of the script. Like This:
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/kurt/Games/dontstarve/dontstarve.xpm
Exec=/usr/games/dontstarve/bin/dontstarve.sh
Path=/usr/games/dontstarve/bin
Name[en_US]=Dont Starve
Name=Dont Starve
Icon=gnome-panel-launcher
Why not just configure Nautilus to execute by default?
Under Nautilus goto Edit->Preferences->Behavior and click:
"Run executable text files when they are opened"
Richard's solution does not work for the Unity Desktop which recent Ubuntu versions use by default. To easily create shortcuts in unity you can use the "Main Menu" aka alacarte application which lets you edit programs. Just click the appropriate category and then "Create Item".
I Wanted to make it easier to launch "Dont Starve" for my kids. I started the program with /usr/games/dontstarve/bin/dontstarve.sh
in a terminal, but wanted it in the applications menu.
I added a menu item with Alacarte but it would not work because it was a .sh file.
After many searches, I figured I needed to specify the path for the script.
Add path as explained in Desktop Variables
I located the launcher alacarte-made-51cc077a-58af-11e3-a764-00252267190b.desktop
in
~/.local/share/applications/
and modified it by adding the path line.
Now Launcher file looks like this:
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/kurt/Games/dontstarve/dontstarve.xpm
Exec=/usr/games/dontstarve/bin/dontstarve.sh
Path=/usr/games/dontstarve/bin
Name[en_US]=Dont Starve
Name=Dont Starve
Icon=gnome-panel-launcher
Works like a champ. I Hope this helps someone else. ( I actually run Mint 15 Olivia based on Ubuntu Raring )