web-dev-qa-db-ja.com

Zenity:選択したファイル名をパスなしで取得します

選択したファイル名をパスなしで変数に入れるには、zenityが必要です。私が今持っているのは

file_to_copy="$(zenity --file-selection --title='Select a File')"
echo $file_to_copy

次に印刷する

/home/blades/Scripts/openwrt-vpn-renew/ze.sh

ze.shだけを印刷したかった。

3
blades

この機能を提供するためにzenityを絶対に必要としない場合は、シェルで parameter expansion を使用して簡単に実行できます。

file_to_copy=${file_to_copy##*/}

ここで、##*/は、*/に一致する、またはbasenameユーティリティを使用した最長の先頭文字列を指します。

file_to_copy=$(basename "$file_to_copy")
7
steeldriver