วิธีรันสคริปต์ sh จากทางลัดบนเดสก์ท็อป


37

ฉันกำลังพยายามสร้างทางลัดเพื่อเข้าสู่ระบบเซิร์ฟเวอร์ ssh ของฉัน:

ssh x.x.x.x

ฉันทำไฟล์ต่อไปนี้:

ssh_home.sh

ทำให้ปฏิบัติการได้:

sudo chmod +x ./ssh_home

ตรวจสอบโดยการคลิกขวาที่คุณสมบัติเพื่อตรวจสอบว่ามันทำงานได้หรือไม่และเป็น ..

แต่สิ่งที่ฉันทำเมื่อคลิกสองครั้งมันจะเปิด gedit ฉันลอง "Open With" แต่ไม่มีแอปเทอร์มินัลปรากฏขึ้น ฉันค้นหาเน็ต แต่พบวิธีเชื่อมโยงไปยังไฟล์โดยไม่รวมไว้ใน "ทางลัดไฟล์"


2
คุณเพิ่ม#! /usr/bin/shที่จุดเริ่มต้นของไฟล์ (บรรทัดแรก) หรือไม่
Misery

คุณสนใจอูบุนตูรุ่นใดบ้าง? โดยหลักการแล้วมันควรจะเป็นกรณีของการทำเครื่องหมายไฟล์ว่าสามารถเรียกใช้งานได้ใน Properties / Permissions แต่ใน 13.04 นี่ดูเหมือนจะไม่เหมาะกับฉัน (แม้แต่บนไฟล์. sh โดยตรงเมื่อ#! /bin/bashเริ่ม ... )
Jez W

ตรวจสอบเจ้าของและการอนุญาตด้วย ผู้ใช้คลิกที่มันได้รับอนุญาตให้เรียกใช้หรือไม่
Misery

1
คำสั่งของคุณไม่ถูกต้อง - คุณกำลังอ้างถึงssh_home.shและ/ssh_homeซึ่งไม่ใช่ไฟล์เดียวกัน
l0b0

2
@Misery: มันไม่ได้/bin/sh /usr/bin/sh( /usr/bin/shจะเกิดขึ้นกับการทำงานในระบบที่/binและ/usr/binมีไดเรกทอรีเดียวกันผมไม่คิดว่าเป็นกรณีสำหรับอูบุนตู>)
คี ธ ธ อมป์สัน

คำตอบ:


50

ฉันรู้ว่าเมื่อไม่นานมานี้ แต่ถ้ามีคนถามฉันฉันมีคำตอบนี้

  1. เปิดหอยโข่ง
  2. เมนูไฟล์ -> แท็บพฤติกรรม
  3. เรียกใช้ไฟล์ข้อความที่ปฏิบัติการได้เมื่อเปิด

ในรุ่นที่ใหม่กว่าตัวเลือกนี้พบได้ที่: เมนูไฟล์ -> แก้ไข -> การตั้งค่า -> แท็บพฤติกรรม

ใน Ubuntu 14.10 เลื่อนเมาส์ไปที่ด้านบนของหน้าจอและไฟล์, แก้ไข ฯลฯ ... แถบเมนูจะปรากฏขึ้น คลิกแก้ไข -> การตั้งค่า -> แท็บพฤติกรรม


2
นี่ควรเป็นคำตอบที่ได้รับการยอมรับจาก IMHO ฉันค่อนข้างผิดหวังที่พยายามคิดว่าทำไมฉันไม่สามารถเรียกใช้เชลล์สคริปต์จาก Nautilus ได้
David Baucum

เมนูไฟล์คืออะไร ไม่เคยเห็นมัน
IgorGanapolsky

ทำงาน คลิกขวาที่เชลล์สคริปต์ของฉันในไฟล์เบราว์เซอร์ ลิงค์ที่สร้าง จากนั้นลากและวางลิงก์ไปยังเดสก์ท็อป ทำตามขั้นตอนข้างต้นในการเรียกดูไฟล์ -> Preferences-> run แทนการดู
maxweber

3
หนึ่งแทรกซ้อนคือที่นี้มีผลกระทบต่อทุกไฟล์ปฏิบัติการ (นั่นอาจเป็นสิ่งที่คุณต้องการ)
Keith Thompson

คำตอบที่ดี! บน Ubuntu 18.04 ฉันตั้งเป็น 'ถามว่าต้องทำอะไร' ดังนั้นฉันสามารถเลือกที่จะเรียกใช้หรือแสดงมันทุกครั้งที่ฉันคลิกไฟล์นั้น ขอบคุณ!
MS Berends

36

ฉันคิดว่าจะเป็นการดีกว่าถ้าคุณใช้ไฟล์ตัวเรียกใช้งานสำหรับสคริปต์ของคุณโดยการสร้าง~/Desktop/ssh_home.desktopไฟล์ที่มีเนื้อหาต่อไปนี้:

[Desktop Entry]
Version=1.0
Exec=/home/yourname/bin/ssh_home.sh
Name=SSH Server
GenericName=SSH Server
Comment=Connect to My Server
Encoding=UTF-8
Terminal=true
Type=Application
Categories=Application;Network;

ด้วยวิธีนี้คุณจะมีไอคอนที่คลิกได้ซึ่งจะเปิดสคริปต์ของคุณ

คุณอาจต้องตั้งค่าสถานะที่ปฏิบัติการได้ด้วยchmod:

chmod +x ~/Desktop/ssh_home.desktop

1
วิธีนี้เป็นวิธีการทำงาน แต่ฉันชอบวิธีการแก้ปัญหา 1 ไฟล์ ...
Michel

6
@michel หากทุกสคริปต์ที่จะมีการเรียกใช้ssh hostคุณไม่จำเป็นต้องมีสคริปต์เพียงเปลี่ยนบรรทัด Exec Exec=ssh hostไป
geirha

1
นี่เป็นทางออกเดียวที่ได้ผลสำหรับฉัน
Aviad P.

ฉันได้รับUntrusted application launcherกล่องข้อความและไม่เรียกใช้คำสั่งของฉัน
Matt

@ Matt ลองคลิกขวาบนไอคอนไปแล้วเลือกProperties > Permissions Allow executing file as programนอกจากนี้หากคุณคัดลอกและวางข้อความด้านบนลงในไฟล์ของคุณตรวจสอบให้แน่ใจว่าไม่มีช่องว่างต่อท้ายหลังบรรทัด ที่อาจทำให้เกิดข้อผิดพลาดของคุณ
Olivia Stork

3

"กับดัก" สำหรับฉันคือฉันค้นหาด้วยการคลิกขวาที่ไฟล์เพื่อหาวิธีในการเปลี่ยนพฤติกรรม (เพื่อให้สคริปต์ทำงานแทนที่จะเปิดใน gedit) อย่าคลิกขวา! ค่อนข้างเปิดจากแถบเมนู "ปกติ":

แก้ไขการตั้งค่า - พฤติกรรมและเปลี่ยนเป็น "เรียกใช้" หรือ "ถามแต่ละครั้ง"

ความคิดเห็น: สำหรับรสนิยมของฉันควรมีวิธีเรียกใช้โปรแกรมด้วยการคลิกขวาด้วย โดยเฉพาะอย่างยิ่งเนื่องจากการคลิกขวานำไปสู่เมนู "เปิดด้วย" ซึ่งทำให้คุณค้นหา "เปิดด้วยทุบตี" อย่างไรก็ตาม "ทุบตี" ไม่รวมอยู่ในตัวเลือก ...


เพื่อรสชาติของฉันด้วย ...
Marecky

1

imo คำตอบที่ง่ายที่สุดคือ -

  1. ตรวจสอบว่าไฟล์. sh ใช้งานได้หากคลิกหรือเรียกใช้จากไดเรกทอรีของตัวเอง
  2. หากใช้งานได้ให้คลิกขวาที่ไฟล์ในไฟล์ aka Nautilus เลือก 'Make Link'
  3. สิ่งนี้จะสร้างไฟล์ชื่อ 'link to xxxx.sh' ในไดเรกทอรีเดียวกัน
  4. ลากสิ่งนี้ลงบนเดสก์ท็อป
  5. เปลี่ยนชื่อเป็นวิธีที่คุณต้องการเช่นล้าง 'ลิงก์ไปยัง' และ 'sh' เพียงแค่ปล่อยชื่อมันจะยังคงใช้งานได้

นอกจากนี้คุณยังสามารถเปลี่ยนไอคอนของลิงค์ได้อีกด้วย คลิกขวาเลือกคุณสมบัติคลิกที่ไอคอนเริ่มต้นในส่วนด้านซ้ายบนของหน้าต่างคุณสมบัติและเลื่อนไปเรื่อย ๆ จนกว่าคุณจะพบภาพที่คุณต้องการให้เป็นไอคอน
Brian Hellekin

0

ฉันจะบอกวิธีที่ง่ายที่สุดในการเพิ่มเชลล์สคริปต์ลงในทางลัดคือการเพิ่มไฟล์. sh ไปยังไดเรกทอรีหลัก เมื่อคัดลอกไปยังโฮมไดเรกทอรีเพียงไปที่ทางลัดที่กำหนดเองและเพิ่มคำสั่ง sh yourfile.sh

นี่คือการทำงานของฉันโดยหวังว่ามันจะช่วยคุณได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.