Estou vendo um problema estranho com o gnu bash no OSX. O valor de ulimit -f está sendo alterado pelo próprio bash. Código reproduzível pequeno:
#!/usr/local/bin/bash
ulimit -f 1
echo "Value: $(ulimit -f)"
echo "---"
outstring=$(echo {1..10000})
echo "Value: $(ulimit -f)"
echo "Size = ${#outstring}"
echo "$outstring" > output_file
Output:
Value: 1
---
Value: unlimited
Size = 48893
wc -c output_file
48894 output_file
Versão do bash
/usr/local/bin/bash --version | head -n1
GNU bash, version 4.4.19(1)-release (x86_64-apple-darwin17.3.0)
Observações: O mesmo código funciona conforme o esperado no Ubuntu e o arquivo não está escrito. No entanto, no OSX, vejo este estranho problema onde ulimit está sendo alterado por baixo de mim. Há algo que eu esteja perdendo ou é um bug?