Enviado em 04/08/2021 - 02:26h
Olá, como vai?
Acontece que não havia pensado no pequeno detalhe que se segue:
Estou adaptando um de meus scripts cujos blocos acima tem como função, meramente, definir o plano de fundo para máquina. O problema e que a função GetGallery (L3) retorna uma string e não um path, oque resulta em...
Não sei muito bem como resolver esse problema sem ter que refazer grande parte do código. Adoraria receber algumas sugestões.
P.S. Não sei se todo o resto do código funciona. Modifiquei bastante o original e esse pode ser apenas um dos erros de lógica : ]
Acontece que não havia pensado no pequeno detalhe que se segue:
1 function GetPictures() {
2 local gallery=$1
3 if [[ $(ls $gallery) =~ .*[.](png|jpg) ]]; then
4 echo ${BASH_REMATCH[@]}
5 fi
6 }
7
8 function GetGallery() {
9 if ! [[ -e ${HOME}/.config/user-dirs.dirs ]]; then
10 Exeption 1
11 else
12 cat ${HOME}/.config/user-dirs.dirs | \
13 grep --color=never "XDG_PICTURES_DIR=" | \
14 cut -f2 -d=
15 fi
16 }
17
18 function SetWallpaper() {
19 local pictures=("$(GetPictures $(GetGallery))")
20 if [[ ${#pictures[@]} -ne 0 ]]; then
21 feh --bg-fill "$(getGallery)/${pictures[0]}"
22 fi
23 }
Estou adaptando um de meus scripts cujos blocos acima tem como função, meramente, definir o plano de fundo para máquina. O problema e que a função GetGallery (L3) retorna uma string e não um path, oque resulta em...
ls: não foi possível acessar '"$HOME/Imagens"': Arquivo ou diretório inexistente
.Não sei muito bem como resolver esse problema sem ter que refazer grande parte do código. Adoraria receber algumas sugestões.
P.S. Não sei se todo o resto do código funciona. Modifiquei bastante o original e esse pode ser apenas um dos erros de lógica : ]