Запустить Pycharm из командной строки (терминала)
Я хочу попробовать PyCharm для развития математики шалфея. Обычно я запускаю eclipse для разработки шалфея, но теперь я хочу попробовать его с помощью PyCharm.
Чтобы запустить eclipse с переменными среды sage, в командной строке я обычно делаю следующее:
sage -sh
cd /path/to/eclipse
./eclipse
Первая строка загружает переменные среды sage, остальные запускают eclipse. Как я могу сделать то же самое для pyCharm? (заметьте, что я использую Mac и Ubuntu для развития шалфея, команды выше агностически для обеих ОС)
- Ссылка 1 близко к решению, которое я ищу, однако я не могу найти pyCharm.sh в любом месте.
- Ссылка 2: Jetbrains также не дает четких инструкций.
Ответы
Ответ 1
Вы можете запустить Pycharm
с терминала Mac с помощью команды open. Просто введите open /path/to/App
Applications$ ls -lrt PyCharm\ CE.app/
total 8
[email protected] 71 amit admin 2414 Sep 24 11:08 lib
[email protected] 4 amit admin 136 Sep 24 11:08 help
[email protected] 12 amit admin 408 Sep 24 11:08 plugins
[email protected] 29 amit admin 986 Sep 24 11:08 license
[email protected] 4 amit admin 136 Sep 24 11:08 skeletons
[email protected] 1 amit admin 10 Sep 24 11:08 build.txt
[email protected] 6 amit admin 204 Sep 24 11:12 Contents
[email protected] 14 amit admin 476 Sep 24 11:12 bin
[email protected] 31 amit admin 1054 Sep 25 21:43 helpers
/Applications$
/Applications$ open PyCharm\ CE.app/
Ответ 2
- Открытое приложение Pycharm
- Найти инструменты в строке меню
- Нажмите
Create Command-line Launcher
- Проверка исполняемого файла модуля запуска, который был создан в
/usr/local/bin/charm
- Откройте проект или файл, просто введите
$ charm YOUR_FOLDER_OR_FILE
Пусть это то, что вам нужно.
Ответ 3
Вы правы, что страница JetBrains не очень ясна. В OS X вы хотите использовать пусковую установку по адресу:
/Applications/PyCharm.app/Contents/MacOS/pycharm
Или, для публикации сообщества:
/Applications/PyCharm\ CE.app/Contents/MacOS/pycharm
К сожалению, добавление символической ссылки в этот двоичный файл не сработает для меня (пусковая установка сбой). Тем не менее, настройка псевдонима. Добавьте это в свой .bash_profile
(или какую-либо оболочку, которую вы используете):
alias pycharm="/Applications/PyCharm CE.app/Contents/MacOS/pycharm"
Затем вы можете запускать команды просто pycharm
.
С этим вы можете делать такие вещи, как открыть проект:
pycharm ~/repos/my-project
Или откройте определенную строку файла в проекте:
pycharm ~/repos/my-project --line 42 ~/repos/my-project/script.py
Или просмотрите diff двух файлов (они не должны быть частью проекта):
pycharm ~/some_file.txt ~/Downloads/some_other_file.txt
Обратите внимание, что мне нужно было пройти абсолютные пути к этим файлам, или PyCharm не смог их найти.
Ответ 4
Внутри IDE вы можете нажать:
Инструменты/Создать панель запуска командной строки...
![Create Command-line Launcher]()
Ответ 5
Обычно я использую встроенную панель запуска приложений (открытую) из OS X:
alias pc='open -a /Applications/PyCharm\ CE.app'
Затем я могу напечатать:
pc myfile1.txt myfiles*.py
Хотя вы не можете (легко) передать args в PyCharm, если вы хотите быстро открыть файлы (без использования полных путей к файлу), это делает трюк.
Ответ 6
Используйте Tools → Create Command-Line Launcher, который установит python script, где вы можете просто запустить текущую рабочую папку с помощью прелести.
Очень важно!
В любое время, когда вы обновляете pyCharm, вам нужно заново создать этот инструмент командной строки, так как его просто python script указывает на конфигурацию pyCharm, которая может быть устаревшей и приведет к сбою при попытке запустить charm .
Ответ 7
Обновить
Теперь можно автоматически запускать средство запуска командной строки из JetBrains Toolbox. Вот как вы это делаете:
- Откройте окно панели инструментов;
- Перейдите к значку шестеренки в правом верхнем углу (окно настроек для самой панели инструментов);
- Включить
Generate shell scripts
; - Заполните текстовое поле
Shell script location
в котором вы хотите разместить средства запуска. Вы должны сделать это вручную, он не будет заполняться автоматически в это время!
На Mac расположение может быть /usr/local/bin
. Для новичков вы можете использовать любой путь внутри переменной PATH или добавить новый путь к переменной PATH в своем профиле bash. Используйте echo $PATH
чтобы увидеть, какие пути есть.
Примечание У меня это не сработало сразу, мне пришлось немного повозиться, прежде чем сгенерировать сценарии. Вы можете перейти к коробке передач IDEA (например, PyCharm) и посмотреть/изменить имя программы запуска. Поэтому для PyCharm имя по умолчанию - pycharm
но вы можете изменить его на любое pycharm
.
Оригинальный ответ
Если вы не используете панель инструментов, вы все равно можете использовать мой оригинальный ответ.
~~ По какой-то причине средство Create Command Line Launcher
больше не доступно в 2019.1. ~~ Потому что оно теперь является частью JetBrains Toolbox
Вот как вы можете создать скрипт самостоятельно:
Если вы уже использовали команду type -a charm
перед использованием, type -a charm
чтобы найти скрипт. Измените версию Pycharm в пути к файлам. Обратите внимание, что нумерация в первой переменной RUN_PATH
отличается. Вам придется самому посмотреть это в директории.
RUN_PATH = u'/Users/boatfolder/Library/Application Support/JetBrains/Toolbox/apps/PyCharm-P/ch-0/191.6183.50/PyCharm.app'
CONFIG_PATH = u'/Users/boatfolder/Library/Preferences/PyCharm2019.1'
SYSTEM_PATH = u'/Users/boatfolder/Library/Caches/PyCharm2019.1'
Если вы ранее не использовали команду charm, вам придется ее создать.
Создайте файл charm где-нибудь так: /usr/local/bin/charm
Затем добавьте этот код (измените номер версии на вашу версию, как описано выше):
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import socket
import struct
import sys
import os
import time
# see com.intellij.idea.SocketLock for the server side of this interface
RUN_PATH = u'/Users/boatfolder/Library/Application Support/JetBrains/Toolbox/apps/PyCharm-P/ch-0/191.6183.50/PyCharm.app'
CONFIG_PATH = u'/Users/boatfolder/Library/Preferences/PyCharm2019.1'
SYSTEM_PATH = u'/Users/boatfolder/Library/Caches/PyCharm2019.1'
def print_usage(cmd):
print(('Usage:\n' +
' {0} -h | -? | --help\n' +
' {0} [project_dir]\n' +
' {0} [-l|--line line] [project_dir|--temp-project] file[:line]\n' +
' {0} diff <left> <right>\n' +
' {0} merge <local> <remote> [base] <merged>').format(cmd))
def process_args(argv):
args = []
skip_next = False
for i, arg in enumerate(argv[1:]):
if arg == '-h' or arg == '-?' or arg == '--help':
print_usage(argv[0])
exit(0)
elif i == 0 and (arg == 'diff' or arg == 'merge' or arg == '--temp-project'):
args.append(arg)
elif arg == '-l' or arg == '--line':
args.append(arg)
skip_next = True
elif skip_next:
args.append(arg)
skip_next = False
else:
path = arg
if ':' in arg:
file_path, line_number = arg.rsplit(':', 1)
if line_number.isdigit():
args.append('-l')
args.append(line_number)
path = file_path
args.append(os.path.abspath(path))
return args
def try_activate_instance(args):
port_path = os.path.join(CONFIG_PATH, 'port')
token_path = os.path.join(SYSTEM_PATH, 'token')
if not (os.path.exists(port_path) and os.path.exists(token_path)):
return False
try:
with open(port_path) as pf:
port = int(pf.read())
with open(token_path) as tf:
token = tf.read()
except (ValueError):
return False
s = socket.socket()
s.settimeout(0.3)
try:
s.connect(('127.0.0.1', port))
except (socket.error, IOError):
return False
found = False
while True:
try:
path_len = struct.unpack('>h', s.recv(2))[0]
path = s.recv(path_len).decode('utf-8')
if os.path.abspath(path) == os.path.abspath(CONFIG_PATH):
found = True
break
except (socket.error, IOError):
return False
if found:
cmd = 'activate ' + token + '\0' + os.getcwd() + '\0' + '\0'.join(args)
if sys.version_info.major >= 3: cmd = cmd.encode('utf-8')
encoded = struct.pack('>h', len(cmd)) + cmd
s.send(encoded)
time.sleep(0.5) # don't close the socket immediately
return True
return False
def start_new_instance(args):
if sys.platform == 'darwin':
if len(args) > 0:
args.insert(0, '--args')
os.execvp('/usr/bin/open', ['-a', RUN_PATH] + args)
else:
bin_file = os.path.split(RUN_PATH)[1]
os.execv(RUN_PATH, [bin_file] + args)
ide_args = process_args(sys.argv)
if not try_activate_instance(ide_args):
start_new_instance(ide_args)
Ответ 8
Чтобы открыть PyCharm из терминала в Ubuntu 16.04, перейдите в
{installation home}/bin
который в моем случае был
/home/nikhil/pycharm-community-2018.1.1/bin/
а затем введите:
./pycharm.sh
Ответ 9
Перейдите в каталог на терминале cd [your directory]
Перейдите в каталог на терминале
использовать charm.
открыть проект в PyCharm
Самый простой и быстрый способ открыть проект в PyCharm
Ответ 10
Включенная утилита, которая устанавливается на /usr/local/bin/charm
, не работает для меня на OS X, поэтому я вместо этого взломал эту утилиту. Это действительно работает!
#!/usr/bin/env bash
if [ -z "$1" ]
then
echo ""
echo "Usage: charm <filename>"
exit
fi
FILENAME=$1
function myreadlink() {
(
cd $(dirname $1) # or cd ${1%/*}
echo $PWD/$(basename $1) # or echo $PWD/${1##*/}
)
}
FULL_FILE=`myreadlink $FILENAME`;
/Applications/PyCharm\ CE.app/Contents/MacOS/pycharm $FULL_FILE
Ответ 11
Обновление: мой ответ больше не работает с PyCharm 2018.X
В MacOS у меня есть этот псевдоним в моем bashrc:
alias pycharm="open -a /Applications/PyCharm*.app"
Я могу использовать это так: pycharm <project dir or file>
Преимущество запуска PyCharm таким образом заключается в том, что вы можете открыть текущий pycharm.
в PyCharm, используя pycharm.
(в отличие от /Applications/PyCharm*.app/Contents/MacOS/pycharm.
вместо этого открывается каталог приложения PyCharm)
Обновление: я переключился на JetBrains Toolbox для установки PyCharm. Найти PyCharm стало немного сложнее, но пока мне повезло с этим монстром:
alias pycharm="open -a \"\$(ls -r /Applications/apps/PyCharm*/*/*/PyCharm*.app | head -n 1 | sed 's/:$//')\""
Ответ 12
После установки на kubuntu я обнаружил, что мой скрипт pycharm в ~/bin/pycharm
был просто записью на рабочем столе:
[Desktop Entry]
Version=1.0
Type=Application
Name=PyCharm Community Edition
Icon=/snap/pycharm-community/79/bin/pycharm.png
Exec=env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/pycharm-community_pycharm-community.desktop /snap/bin/pycharm-community %f
Comment=Python IDE for Professional Developers
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-pycharm-ce
Очевидно, я не мог использовать это, чтобы открыть что-нибудь из командной строки:
$ pycharm setup.py
/home/eldond/bin/pycharm_old: line 1: [Desktop: command not found
/home/eldond/bin/pycharm_old: line 4: Community: command not found
Но есть подсказка в файле ввода рабочего стола. Заглянув в /snap/pycharm-community/
, я нашел /snap/pycharm-community/current/bin/pycharm.sh
. Я удалил ~/bin/pycharm
(фактически переименовал его, чтобы иметь резервную копию), а затем сделал
ln -s /snap/pycharm-community/current/bin/pycharm.sh pycharm
где, опять же, я нашел начало пути, проверив сценарий ввода с рабочего стола, с которого мне пришлось начинать.
Теперь я могу открыть файлы с pycharm из командной строки. Я не знаю, что я испортил во время установки на этот раз; последние два раза я делал свежие установки, с этим проблем не было.
Ответ 13
Полезная информация для некоторых:
В Linux при установке PyCharm в виде пакета оснастки автоматически создается средство запуска командной строки с именем pycharm-professional, pycharm-community или pycharm-Educational. Инструменты | Поэтому команда "Создать командную строку" недоступна.
Ответ 14
На Mac OSX
Обновление 2019/05 Теперь это можно сделать в приложении JetBrains Toolbox. Вы можете установить его один раз с помощью панели инструментов для всех ваших IDE JetBrain.
Начиная с 2019.1 EAP, Create Commmand Line Launcher
больше не доступна в меню "Инструменты". Мое решение состоит в том, чтобы использовать следующий псевдоним в моем профиле bash/zsh:
Убедитесь, что вы запускаете chmod -x...../pycharm
чтобы сделать двоичный файл исполняемым.
# in your ~/.profile or other rc file to the effect.
alias pycharm="open -a '$(ls -r /Users/geyang/Library/Application\ Support/JetBrains/Toolbox/apps/PyCharm-P/**/PyCharm*.app/Contents/MacOS/pycharm)'"
Ответ 15
open/Applications/PyCharm\ CE.app/
открывает главное диалоговое окно Pycharm для выбора проекта.
работал для меня с macOS 10.13.6
и Pycharm 2018.1
Ответ 16
Простое решение без необходимости патчей:
open -b com.jetbrains.pycharm
Вы можете установить его в качестве псевдонима для повседневного более легкого использования (поместите в ваш .bash_rc
и т.д.):
alias pycharm='open -b com.jetbrains.pycharm'
Использование:
pycharm .
pycharm file.py
Ответ 17
В Ubuntu добавляется одна вещь: Pycharm запускается с charm
или charm [file]
. Если вы дадите pycharm
, он не будет найден.
Ответ 18
Это сработало для меня на моем MacOS MacOS Mojave 2017 года (версия 10.14.3).
-
Откройте ваш ~/.bash_profile: nano ~/.bash_profile
-
Добавьте псевдоним: alias pycharm="open/Applications/PyCharm\ CE.app"
-
Обновление терминала: source ~/.bash_profile
-
Утверждают, что это работает: pycharm