Форум программистов, компьютерный форум, киберфорум
Наши страницы
Linux
Войти
Регистрация
Восстановить пароль
 
S9
Волшебник
649 / 252 / 87
Регистрация: 18.12.2010
Сообщений: 541
1

Конвертирование файлов

24.08.2015, 17:04. Просмотров 290. Ответов 2
Метки нет (Все метки)

Всем добра!
Вообщем, понадобилось мне переконвертировать много *.svg файлов в *.pdf, чтобы latex смог понять это.
конвертирование одного файла будет примерно так (конвертирует image.svg в image.pdf)
Bash
1
inkscape -D -z --file=image.svg --export-pdf=image.pdf --export-latex
но каждый раз менять аргумент для каждого файла как-то не очень впечатляет, т.к. впечатляет количество *.svg файлов
Как сделать небольшой скрипт, который переберёт все *.svg файлы в директории и переконвертирует их в *.pdf файлы? Причём имя *.pdf файла должно соответсвовать имени *.svg файла.

Буду премного благодарен за решение

Добавлено через 1 час 46 минут
уже не актуально, сам разобрался
если кому надо
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/bash
 
for svg_file_name in *
do
  echo "$svg_file_name" | grep -q "svg$"
  
  if [ $? -eq 0 ]
  then
    current_file_name=`echo $svg_file_name | sed 's/....$//'`
    current_dir_name=`echo $current_file_name"_latexdir"`
    mkdir $current_dir_name
    inkscape -D -z --file=$current_file_name.svg --export-pdf=$current_dir_name/$current_file_name.pdf --export-latex
  fi
done
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.08.2015, 17:04
Ответы с готовыми решениями:

Конвертирование .CER в .REM под Linux
Извените но не нашол подходящей темы для вопроса. Может кто подскажет как под...

Пакетное конвертирование UniConvertor
Есть задача переконвертировать из CBR в PDF комиксы, что-бы читалка читала моя)...

Скрипты Linux, удаление файлов из каталога, подсчет файлов в каталоге
С linux столкнулась не по своей воле, но приходиться изучать, я совсершенно...

Копирование TXT-файлов из одной папки и BMP-файлов из другой папки в папку, в которой находится пакетный файл
Доброго времени суток. У кого есть возможность сообразить какой код мне...

Скрипт, который выведет только владельцев файлов (только файлов) в текущем каталоге
Пробовал вот это но результата не дало ls -ALo | grep ^- | cut -f 3

2
Marinero
Модератор
Эксперт NIX
2109 / 1698 / 576
Регистрация: 02.03.2015
Сообщений: 5,551
25.08.2015, 01:57 2
Bash
1
2
3
4
5
6
7
8
#!/bin/bash
 
for svg_file_name in *.svg
do
    current_dir_name="${svg_file_name%.svg}_latexdir"
    mkdir -p $current_dir_name
    inkscape -D -z --file=$svg_file_name --export-pdf=$current_dir_name/${svg_file_name%.svg}.pdf --export-latex
done
2
gng
823 / 565 / 170
Регистрация: 08.09.2013
Сообщений: 1,518
25.08.2015, 09:36 3
Вставлю свои три копейки. Приведены правильные решения, но не до конца соответсвуют постановке задачи.
Цитата Сообщение от S9 Посмотреть сообщение
т.к. впечатляет количество *.svg файлов
при том, что командная строка ограничена в зависимости от дистра примерно в пределах от 100K до 5M символов
Bash
1
getconf ARG_MAX
Имена файлов, заполненные по *, или *.svg могут туда и не вместиться. Используют обычно xargs или find ... -exec, или что-то типа:
Bash
1
find . -maxdepth 1 -name "*.svg" | while read $f; do inkscape -D -z --file="$f" --export-pdf="${f%.svg}.pdf" --export-latex; done
Добавлено через 2 часа 36 минут
PS. Проверил. Моё предупреждение в данном случае оказалось неуместным. Для большого кол-ва файлов
Bash
1
2
$ ls *
bash: /bin/ls: Argument list too long
Но
Bash
1
$ for f in *; do echo $f; done
выдает правильный результат. В данном случае подстановка происходит не в командную строку
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.08.2015, 09:36

Конвертирование файлов
Установлен Mathcad 15. Хотел преобразовать файлы, но эта команда не работает. В...

Конвертирование видео файлов в ts
Здравствуйте! Есть ресивер с юсб-портом. Когда он производит запись на флешке...

Конвертирование .mat файлов в .xml
Добрый день. Надеюсь кто-то сможет пролить свет на мой вопрос. У меня есть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru