Coisas em /etc/profile.d provavelmente são originadas pelo seu gerenciador de janelas quando você efetua login, e isso provavelmente usa / bin / sh, então use um shell POSIX, não o bash, para que scripts sejam adicionados lá. Observe que [[
não foi encontrado nos scripts que estão lá agora.
Então,
- escolha
[ ... ]
over[[ ... ]]
- use
funcname() { ... }
sem a palavra-chavefunction
dash é um shell POSIX (apenas), portanto, você pode encontrar a página de manual do traço à mão
Comentários sobre link
-
Este é o principal erro: Alterar
if [[ ! -f ~/.gtk-bookmarks ]]
para
if [ ! -f ~/.gtk-bookmarks ]
-
a função
find_server_by_ip
pode ser simplificada:findserverbyip() { case "$(hostname -I)" in *[0-9].33.9.[0-9]*) share_server=serverB ;; *) share_server=serverA ;; esac }
Além disso, este comentário é enganoso: a função não retorna nada, tem um efeito colateral.
# Return : echo Server to use
-
também pode remover a linha shebang: esse script não é executado, ele é originado.