BASHは可能なファイルをリストし、1つを選択します。

BASHは可能なファイルをリストし、1つを選択します。

bashスクリプトを実行し、可能なファイルをファイル選択オプションとしてリストし、scpを介してそのファイルをターゲットに転送できるようにしたいと思います。

scp部分は大丈夫ですが、ファイルのリストを取得してファイルを選択する方法は私にとって難しい問題です。

$ ./script
Please select a file.
[0] ~/Desktop/ScreenShot-04-06-19-01:02:33.png
[1] ~/Desktop/ScreenShot-04-06-19-01:03:33.png
[2] ~/Desktop/ScreenShot-04-06-19-01:04:33.png
Enter File Index ID: 

ベストアンサー1

別の方法は、bashで選択を使用することです。

$ cat myscript
PS3="Enter File Index ID: "
echo "Please select a file."
select file ; do
  [ "$file" ] &&
   {
     echo "$file"
     break
   } ||
   {
     echo "bad choice"
     break
   }
done

あなたはこれを次のように呼びます:

myscript ~/Desktop/*.png

PS:スクリプトはコマンドなので、スクリプト名をmyscriptに変更します。
バラよりman script

おすすめ記事