Виконання програми через термінал


0

У мене є Sage (математична програма), і я хочу виконати його через термінал.

Я знаю, що можу перейти до каталогу та виконати його за допомогою -

open Sage.app

Але я б дійсно хотів зробити, це просто тип sage в терміналі і мати його запустити. Я вважаю, що це досить просте завдання, але я просто не маю жодної ідеї! Дякую.

Відповіді:


6

Вам потрібно псевдонім . Введення тексту alias sage='open /PATH/TO/Sage.app' створить псевдонім, який буде робити саме те, що ви хочете, запустіть програму, просто ввівши sage. Проблема полягає в тому, що це буде тривати лише до закриття цього вікна терміналу (bash). Отже, вам потрібно створити цей псевдонім кожного разу, коли ви запускаєте новий bash. Щоб зробити це, просто:

  1. Створюйте або змінюйте назву текстового файлу .bash_profile у домашньому каталозі.
  2. Додати alias sage='open /PATH/TO/Sage.app' на ньому
  3. Збережіть файл
  4. Завантажте файл один раз, ввівши . ~/.bash_profile

Пам'ятайте, що він буде враховувати регістр, тому, якщо ви вводите Sage (замість sage ) вона не працюватиме.


3

Потрібно створити назву сценарію оболонки sage що містить:

#!/bin/bash
open /Applications/Sage.app

Я пропоную створити bin у вашій домашній папці і зберігати будь-які сценарії, створені там. Збережіть скрипт з ім'ям sage, потім виконайте chmod u+x sage щоб дозволити користувачеві виконати сценарій.

Останній крок полягає в тому, щоб повідомити bash, що він повинен включати будь-які скрипти, знайдені в ~/bin на вашому шляху. Щоб зробити це редагування ~/.bash_profile. Ви можете зробити nano ~/.bash_profile або скористайтеся будь-яким текстовим редактором. Додайте це до файлу:

# Prepend ~/bin to the PATH variable
export PATH="$HOME/bin:$PATH"

Збережіть і закрийте .bash_profile, перезапустіть bash, і ви зможете запустити Sage.app, ввівши sage.

EDIT: Псевдонім, як сказав інший відповідь, є, ймовірно, більш чистим підходом (1 менший файл для відстеження), якщо вам не потрібна логіка сценарію і просто хочете запустити програму.

Я звик робити це таким чином, оскільки найчастіше я виявляю, що я передаю багато параметрів, які не змінюються на виконуваний файл, але 1 або 2 це може. Тому я пишу сценарій, щоб прийняти ці параметри і вставити їх у потрібні місця при виклику виконуваного файлу. Просто щось майте на увазі.


Намагайтеся уникати рекомендацій щодо створення нових папок у домашньому каталозі користувача. Багато людей, можливо, захочуть зберегти чисту домашню папку і віддадуть перевагу іншим рішенням, наприклад, просто використовуючи / bin (наприклад)
Alexander

@XAleXOwnZX - створення нової папки під будинком набагато чистіше, ніж записування в / bin - Якщо ви використовуєте binarieies і скрипти командного рядка, вам потрібен каталог, до якого ви можете писати, не впливаючи на інших користувачів
Mark

2
/ bin є прекрасним місцем для сценаріїв, призначених для всіх користувачів або системи в цілому, але специфічні для користувача сценарії повинні дійсно перебувати в межах домашнього каталогу. Створення папки ~ / bin значно спрощує керування та резервне копіювання. Крім того, я думаю, що це занадто багато припущення припустити, що ОП має привілеї для запису в / bin або / usr / bin.
Vickash

принаймні створити приховану папку & gt; _ & gt;
Alexander
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.