Digamos que eu tenha alguns dados de configuração em um arquivo config
. Por conveniência, eu gostaria de carregar esses dados em uma variável do shell CONFIG_DATA
,.
Obviamente eu posso fazer:
CONFIG_DATA="$(cat config)"
Mas isso parece um uso inútilcat
para mim. Essa é a única maneira de fazer isso? Ou existe uma maneira mais elegante de fazer isso?
As respostas devem preferir o POSIX, mas podem usar qualquer shell.
shell-script
shell
io-redirection
strugee
fonte
fonte
Respostas:
No Bash e no shell Z, pelo menos, existe uma maneira mais rápida:
Para citar a página de manual do shell Bourne Again:
fonte
$(<file)
é muito menos comum, portanto, pode resultar em muito mais WTFs; e o ganho de velocidade a partir desta operação, se tal configuração é para ser carregado para uma variável, é provavelmente insignificantefor i in $(cat file); do ...
é outro. O fato de serem comuns não é motivo para continuar usando ferramentas ruins. O que não quer dizer que esse uso particular de gato seja ruim demais, não tenho certeza se existe uma maneira mais portátil. Apenas dizendo que comum e familiar! = Bom.