Также можно попробовать команду more
вместо less
. Она все равно прокрутит вывод по пагам и позволит вам прокрутить его красиво, но в конце концов ваш терминал сохранит вывод так, как будто он никуда не пропущен.
printf "Are you sure you want to copy %s (y/n) ? (file bigger than 10 MB: %lu) " "$0" \
"$(wc -c < "$0")"
парсинг вывода ls
не является надежным (и вы забыли $(...)
вокруг него).
Я предполагаю, что это в какой-то форме оболочки вроде bash или ksh. X - это файл (я также предположил, что в его имени есть пробел)
printf "Are you sure you want to copy %s (y/n) ? (file bigger than 10 MB : %s) " "$x" \
$(ls -ld -- "$x" | awk {'print $5'})
должен сделать.
Пожалуйста, обратите внимание на синтаксис $( some code )
.
Если в системе GNU вы предпочитаете использовать 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
заставляет stat
следовать сим-ссылкам.