「検索」結果をzenityに渡す

「検索」結果をzenityに渡す

次のスクリプトの結果:

results=$(find -iname "*.mp4")
echo $results;

次のようになります。

file1 file2 file3

端末で次のコマンドを実行したときに示されているように、findコマンドの結果を変数に渡すにはどうすればよいですか?

find -iname "*.mp4"

印刷:

file1
file2
file3

答え1

echo $resultsそれをする代わりにecho "$results"

修正する:

2つのケースの違いは、最初のケースは多くのパラメーターをecho受け取り、2番目のケースは1つのパラメーターのみを受け取ることです。このためです変数の置換前に起こったパラメータ分析

答え2

結果を読んでfind配列を作成し、zenityに渡されるzenityのリストの例を試してください。

#!/bin/bash

List=()
while IFS= read -d $'\0' -r file ; do
    List=("${List[@]}" "$file")
done < <(find . -iname '*.mp4' -print0)

zenity --list --column "Item" "${List[@]}"

関連情報