まずは普通にコマンド欄に下記を入れてみました。
コマンド(C): echo %F | xset -bi
これだけでできるのですが、ちょっと残念なことに複数ファイルを選択したときに半角スペース区切りとなってしまい、ファイル名のスペースと区切り文字のスペースの区別がつきません。そこでひと工夫
コマンド(C): echo '%F' | xset -bi
これで各ファイル名がシングルクォートでくくられるようです。おそらく、Thunarがシングルクォート区切りを吐いていて、それをさらにシングルクォートでくくっているのでそのまま出ているのではないかと思います。
これはこれで使えるのですが、複数ファイル名が欲しいときってバッチを作ったりする際だったりするのでできれば改行区切りがいいなぁと…
そこで簡単なシェルスクリプトを作成
~/bin/prm_split.sh
if [ $# -eq 1 ]; then
echo -n "$1"
else
for f in "$@"; do
echo $f
done
fi
echo -n "$1"
else
for f in "$@"; do
echo $f
done
fi
引数の数を見ているのは、1個のファイル名を貼り付けるケースというのはコマンドラインが多く、コマンドラインでは改行が入っては不都合だからです。スペース区切りと改行区切りの2つのアクションを作るのであれば for 〜 done だけで十分です。
コマンド(C): prm_split.sh %F | xset -bi
これで期待通りの動作\(^_^)/
で、端末にファイル名を貼り付けようとしたら…張り付かない><;
ちょっといじって
コマンド(C): prm_split.sh %F | xset -pi
これだとうまく行く…
仕方がないので2回実行
コマンド(C): prm_split.sh %F | xset -bi;prm_split.sh %F | xset -pi
はいこれで期待通りの動作。
0 件のコメント:
コメントを投稿