Как запустить java-исполняемый файл без java -jar [duplicate]

Vim использует .swp-файлы в качестве областей хранения для незавершенной работы, позволяя редактировать очень большие файлы, даже если они не могут полностью помещаться в память. Это наследие с того времени, когда оперативная память ОЗУ была очень маленькой, а большие файлы, которые не вписывались в память, были более распространены, но она осталась и означает, что мы можем редактировать файлы с большим количеством гигабайт, не съедая всю доступную оперативную память или убивая процессы. VIM удаляет файл .swp, когда он закончил редактирование, или покидает его, если процесс выходит из строя.

Если у вас есть .swp-файл и исходный файл, вы можете немного восстановить потерянную работу. Это описано здесь:

http://vimdoc.sourceforge.net/htmldoc/recover.html

Чтобы восстановить файл, просто откройте исходный файл. vim заметит, что уже есть файл .swp, связанный с файлом, и вы получите предупреждение и спросите, что вы хотите сделать. Предполагая, что у вас есть необходимые права на запись в файл, «восстановление» должно быть одним из указанных параметров.

В качестве альтернативы вы можете запустить новый экземпляр vim (на пустой документ) и использовать команду , указывая файл, который вы хотите восстановить.

Обратите внимание, что основное использование для .swp-файлов является временным хранилищем для vim, позволяющим редактировать большие файлы, а не восстановление. Поскольку такой vim не записывает журнал в файл, и если во время редактирования теряется питание, файл .swp может стать поврежденным. К счастью, инструмент восстановления в vim довольно терпим к частично поврежденным файлам .swp и по-прежнему будет пытаться восстановить как можно больше потерянных изменений в файле. Посмотрите на наличие трех вопросительных знаков: ??? в восстановленном файле, поскольку они будут вставлены всякий раз, когда в файле .swp обнаружено повреждение.

Как только вы довольны восстановлением, вам необходимо вручную удалите файл .swp, чтобы убедиться, что вы не продолжаете получать предупреждение при редактировании файла. Будьте внимательны, чтобы не запускать процесс восстановления во второй раз.

2
задан 1 May 2018 в 15:09

6 ответов

Это случай для alias: откройте ~/.bash_aliases в вашем предпочтительном текстовом редакторе и добавьте эту строку:

alias pdftk='java -jar build/jar/pdftk.jar'

Сохраните файл и откройте новое окно терминала (или запустите в существующем), pdftk должен работать с синтаксисом, как вы его знаете сейчас.

2
ответ дан 22 May 2018 в 11:05
  • 1
    Я не уверен, почему вы добавили ответ, хотя есть аналогичный повторяющийся вопрос с тегами уже – Ten-Coin 1 May 2018 в 14:50
  • 2
    Могу ли я создать такой файл, если он не существует? Я бы предпочел не писать это прямо в .bashrc – Bruni 1 May 2018 в 14:52
  • 3
    @Bruni Да или добавьте строку в ~/.bashrc вместо этого, как вам нравится. – dessert 1 May 2018 в 14:52
  • 4
    @ Ten-Coin Просто потому, что я не уверен, что этого достаточно. По-видимому, есть консенсус, что это не проблема, см. этот мета-вопрос , особенно этот ответ и обсуждение в комментариях. – dessert 1 May 2018 в 14:56

Это случай для alias: откройте ~/.bash_aliases в вашем предпочтительном текстовом редакторе и добавьте эту строку:

alias pdftk='java -jar build/jar/pdftk.jar'

Сохраните файл и откройте новое окно терминала (или запустите . ~/.bash_aliases в существующем), pdftk должен работать с синтаксисом, как вы его знаете сейчас.

2
ответ дан 17 July 2018 в 15:35

Это случай для alias: откройте ~/.bash_aliases в вашем предпочтительном текстовом редакторе и добавьте эту строку:

alias pdftk='java -jar build/jar/pdftk.jar'

Сохраните файл и откройте новое окно терминала (или запустите . ~/.bash_aliases в существующем), pdftk должен работать с синтаксисом, как вы его знаете сейчас.

2
ответ дан 23 July 2018 в 16:31

Здесь сценарий bash для вас

#!/bin/bash

exec java -jar /path/to/pdftk.jar "$@"

$@ - это переменная, которую вы искали. Это все аргумент, который вы передаете сценарию, который вы передаете pdftk.jar.

exec, чтобы избежать другой оболочки и заменить ее на java-процесс.

1
ответ дан 22 May 2018 в 11:05

Здесь сценарий bash для вас

#!/bin/bash exec java -jar /path/to/pdftk.jar "$@"

$@ - это переменная, которую вы искали. Это все аргумент, который вы передаете сценарию, который вы передаете pdftk.jar.

exec, чтобы избежать другой оболочки и заменить ее на java-процесс.

1
ответ дан 17 July 2018 в 15:35

Здесь сценарий bash для вас

#!/bin/bash exec java -jar /path/to/pdftk.jar "$@"

$@ - это переменная, которую вы искали. Это все аргумент, который вы передаете сценарию, который вы передаете pdftk.jar.

exec, чтобы избежать другой оболочки и заменить ее на java-процесс.

1
ответ дан 23 July 2018 в 16:31

Другие вопросы по тегам:

Похожие вопросы: