Por que o 'typeset' não funciona para mim, mas o 'declare' faz? [fechadas]

1

Troquei o shell da minha conta principal para zsh e, ao instalar um script que registra histórico em um banco de dados, link , eu vi que alguns comandos typeset neles não funcionavam, e depois de algumas buscas eu os mudei para declare e então eles funcionaram.

Os arquivos em questão são link e link (em commit 0b89299, 2017-05-01). Os comandos typeset no segundo estão no início do arquivo.

Qual poderia ser a diferença entre a configuração do autor e a minha que permitiria que o typeset trabalhasse no deles, mas não no meu?

Meu shell usual é bash e mudei apenas minha conta de logon normal para zsh e apliquei a conta chsh -s $SHELL ao meu, mas não sei se isso afeta todas as outras contas.

ls -l /bin/sh mapeia para dash .

PS. Como arquivos como .bashrc e .zshrc não contêm #!/bin/bash ou #!/bin/sh , o interpretador executa os comandos quando os logons do usuário ou algum comando requer um shell?

.zshrc

# contents of .zshrc
export ZSH=/home/vfclists/.oh-my-zsh
ZSH_THEME="agnoster"
plugins=(git)

source $ZSH/oh-my-zsh.sh
if [ -f ~/.profile ]; then
    source ~/.profile
fi

# larkery historydb, https://github.com/larkery/zsh-histdb
# paths must be configured by now
if [ -f ~/bin/sqlite-history.zsh ]; then
    source ~/bin/sqlite-history.zsh
fi
source ~/bin/history-timer.zsh
autoload -Uz add-zsh-hook
add-zsh-hook preexec _start_timer
add-zsh-hook precmd _stop_timer
    
por vfclists 30.04.2017 / 13:32

0 respostas