printf "Are you sure you want to copy %s (y/n) ? (file bigger than 10 MB: %lu) " "$0" \
"$(wc -c < "$0")"
analisar a saída de ls
não é confiável (e você esqueceu o $(...)
em torno dele).
Estou tentando realizar o seguinte:
printf "Are you sure you want to copy %s (y/n) ? (file bigger than 10 MB) " "$0"
Funciona bem, no entanto, gostaria de exibir o tamanho real do meu arquivo, fazendo algo como:
printf "Are you sure you want to copy %s (y/n) ? (file bigger than 10 MB : %s) " "$0" "ls -l $0 | awk {'print $5'}"
No entanto, eu tenho uma falha ao fazer isso. Eu acho que não é o jeito certo de fazer isso.
printf "Are you sure you want to copy %s (y/n) ? (file bigger than 10 MB: %lu) " "$0" \
"$(wc -c < "$0")"
analisar a saída de ls
não é confiável (e você esqueceu o $(...)
em torno dele).
Eu suponho que isso esteja em alguma forma de shell como bash ou ksh. X é o arquivo (eu também supus que tenha espaço em seu nome)
printf "Are you sure you want to copy %s (y/n) ? (file bigger than 10 MB : %s) " "$x" \
$(ls -ld -- "$x" | awk {'print $5'})
deve fazer.
Por favor, note a sintaxe $( some code )
.
Se estiver em um sistema GNU, prefira usar stat
:
printf "Are you sure you want to copy %s (y/n) ? (file bigger than 10 MB : %s) " "$0" \
"$(exec stat -Lc '%s' -- "$0")"
-L
faz stat
seguir links simbólicos.