Command

命令在 Thunar 自定義操作中不再起作用

  • May 11, 2017

我曾經創建一個 Thunar 自定義操作,如此所述,以便在不從選定(多個)影片文件中轉碼的情況下提取音頻。

在 Thunar 自定義操作列表中添加的命令是:

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

現在我只得到這個:

parallel: Warning: Input is read from the terminal. Only experts do this on purpose. Press CTRL-D to exit.

為什麼會這樣以及如何調整這些命令以便它們可以在 Thunar 自定義操作中工作?

我不確定是否理解該命令。為什麼在 %F 之前加上 – ?

試試這個:

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

說明:據我了解, %F 是 Thunar 被文件替換的內容,並行使用 ::: 作為輸入。

手冊頁中的一個範例正是

parallel gzip {} ::: file1 file2

要向 Thunar 自定義操作添加一個類似於此處的命令

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

使其可執行並保存。

bash /path/to/the/script %F在 Thunar 自定義操作中,使用命令和以下條件添加新條目:

在此處輸入圖像描述

這需要對每種文件類型進行單獨的自定義操作(因為它僅限於 mp4 到 m4a:對 flv 到 m4a、webm 到 ogg、avi 到 mp3 等進行相應的更改)但具有輸出保持準確輸入名稱(文件.mp4變為file.m4a),而第一個命令不會(file.mp4變為file.mp4.m4a)。

引用自:https://unix.stackexchange.com/questions/176775