選択した各フォルダのプログラムインスタンスのカスタムアクションを開きますか?

選択した各フォルダのプログラムインスタンスのカスタムアクションを開きますか?

Thunarでは、次のようにフォルダを開くことができます。元ファソ

commandを使用してカスタムアクションを作成しました/usr/bin/exfalso %f。単一のフォルダを選択すると機能します。複数のフォルダを選択するときに、Thunarが選択したフォルダごとにEx F alsoインスタンスを開くようにしたいと思います。

パラメータを試しましたが、%FEx %NF alsoは最初のフォルダに対してのみ開きます。

ベストアンサー1

%fこれを試みるのではなく、引数をカスタムコマンドとして使用し、内部的に次のタスクを実行するシェルスクリプトを作成するかどうか疑問に思います。

#!/bin/bash

for i in "$@"; do
  echo "/usr/bin/exfalso $i"
done

これにより、次の一連のコマンドが生成されます。

$ ./myexfalso_lancher.bash 1 2 3 "4 5"
/usr/bin/exfalso 1
/usr/bin/exfalso 2
/usr/bin/exfalso 3
/usr/bin/exfalso 4 5

これがあなたが望むものです。機能させるには、そのecho行を次のように変更します。

/usr/bin/exfalso "$i"

このアプローチの問題を心配することも、心配しないこともあります。

  1. 処理中のファイル/フォルダにスペースが含まれている場合、forパラメータを引用し%fないとループが機能しない可能性があります。ステートメントをwhile使用してループに切り替えると、readファイルまたはフォルダ名のスペースをよりよく処理できます。
  2. スクリプトに渡すコマンドパラメータが何であるかを100%確信できません。そうですが、%f他のものを使用する必要があるかもしれません。
  3. 起動できるexfalの数を制限するために、このスクリプトにいくつかの保護を追加することもできます。単純なループカウンタがこれを行うことができます。 10に達すると終了することがあります。

おすすめ記事