Python Pyperclip файл PS к тому же dir с помощью ps2pdf

Использование Ubuntu 14.04 и Python 3.6

У меня в настоящее время есть установленный pyperclip, работает отлично при создании ярлыков для открытия файлов в определенных программах. Я просто копирую файл в буфер обмена и открытый с указанным сочетанием клавиш приложения.

Я хотел бы сделать, то же с ps2pdf кроме добавляет .pdf к целевому файлу в том же каталоге. Независимо от того, что я пробую, это продолжает создавать PDF в моем корневом каталоге. Правильный синтаксис для ps2pdf: ps2pdf Original_file.ps Destination_file.pdf

#!/usr/bin/env python3
import subprocess
import pyperclip

first = pyperclip.paste()

#text =`echo "$first" | cut -d'.' -f1`

text = first.substr(0, first.lastIndexOf(".")) + ".pdf";

subprocess.Popen(["ps2pdf", pyperclip.paste() " " text])

Я попробовал довольно много различных изменений и переменных, но я не хочу перечислять их всех здесь. Просто шоу 1 пример того, что еще я попробовал.

Любая справка ценилась бы.

Спасибо

0
задан 7 May 2017 в 09:41

1 ответ

#!/usr/bin/env python3
import subprocess
import pyperclip
import os

os.chdir("/DirectoryPathOfFile")

subprocess.Popen(["ps2pdf", pyperclip.paste()])

Это работало как очарование.

Теперь для разработки еще больше того, что я пытался сделать. Поскольку мы знаем, что существует экспорт проблемы в PDF в Ubuntu при заполнении форм Adobe. Можно только экспортировать в PS, затем преобразовывают через ps2pdf. Затем для тех из нас, кто хочет чистый файл, мы должны использовать exiftool. Ниже сценарий в качестве примера для обработки всего этого, включая удаление _original файла, созданного exiftool при работе над тем же файлом с тем же именем в том же dir

, мне нравится то, что можно наблюдать, что он работает в наутилусе. Я не сделал попытки с помощью event.wait для этого, не было абсолютно уверено, как реализовать, но также и хотел позволить времени для жесткого диска выполняться (быть дополнительным осторожный). - Помнят, это требует, чтобы все зависимости pyperclip были установлены. Я связал этот сценарий с сочетанием клавиш, и может теперь Ctrl +c .ps файл в наутилусе и (сочетание клавиш сценария), таким образом, сценарий делает остальных.

#!/usr/bin/env python3
import subprocess
import pyperclip
import os
import time

os.chdir("/DirectoryPathOfFile")

subprocess.Popen(["ps2pdf", pyperclip.paste()])

time.sleep(3)

new1 = os.path.splitext(pyperclip.paste())[0]+".pdf"

subprocess.Popen(["exiftool", "-all:all=", new1])

time.sleep(3)

new2 = os.path.splitext(pyperclip.paste())[0]+".pdf_original"

os.remove(new2)

#optionally remove original .ps file as well
#os.remove(pyperclip.paste())

я надеюсь, что это помогает всем остальным так, как это сделало меня!

0
ответ дан 3 November 2019 в 07:08

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

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