Команда, не работающая больше в пользовательских действиях Thunar

[
t=lkj
echo ${t:0:${#t}-1}
] [

] Вы получаете подстроку от 0 до длины строки -1. Обратите внимание, однако, что это вычитание специфично для бэша и не будет работать на других оболочках.[

] [

]Например, []dash[] не может разобрать даже[

] [
echo ${t:0:$(expr ${#t} - 1)}
] [

]Например, на Ubuntu, []/bin/sh[] это []dash[][

]
1
13.04.2017, 15:22
2 ответа

Я не уверен, что понимаю эту команду. Почему вы кладете - до% f?

Попробуйте это:

xfce4-terminal -e "parallel avconv -i '{}' -map 0:1 -c:a copy '{}.m4a' ::: %F"

Объяснение: Как я понимаю,% f - это то, что Thunar заменяет файлы, а параллельно использует ::: для ввода.

Одним из примеров в MANPAGE является именно

parallel gzip {} ::: file1 file2

, чтобы добавить в Thunar Custom Action A, как команда, как один из здесь

for i in *.mp4; do avconv -i "${i}" -map 0:1 -c:a copy "${i%.mp4}.aac"; done

, сначала добавьте это в исполняемый сценарий, вроде

#! /bin/sh -e
for i in *.mp4; do avconv -i "${i}" -map 0:1 -c:a copy "${i%.mp4}.m4a"; done

сделать его исполняемым и сохранять Это.

В пользовательских действиях Thunar добавьте новую запись с помощью команды Bash / Path / to / the / Script% f и следующие условия:

enter image description here

Это требует отдельных пользовательских действий для каждого типа файла (потому что Он ограничен MP4 до M4A: внести изменения соответственно для FLV в M4A, WebM до OGG, AVI в MP3 и т. Д.) Но имеет то преимущество, что вывод сохраняет точное входное имя ( File.mp4 ] file.m4a ), в то время как с первой командой не работает ( file.mp4 file.mp4.m4a ).

1
27.01.2020, 23:37

Теперь я использую следующее:

bash -c 'ffmpeg -i "$0" -map 0:1 -c:a copy "${0%%.*}".m4a' %f

с настройкой *.flv;*.mp4 для условий внешнего вида.

1
27.01.2020, 23:37

Теги

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