Есть ли команда bash для получения 5-го поля в выходных данных, разделенных табуляцией? - PullRequest
0 голосов
/ 17 апреля 2019

Я пишу bash-скрипт для получения размера файла. Я использовал следующее:

ls -lah $1 | cut -d \t -f 5

ls -lah $1 выводит что-то вроде следующего:

-rw-r--r--  1 paolosecci  staff   5.2M Apr 16 19:27 file.txt

Я хочу передать этот вывод и выбрать только "5.2M"

Ответы [ 2 ]

1 голос
/ 17 апреля 2019

См. https://mywiki.wooledge.org/ParsingLs.

Вместо этого используйте

stat -f '%z' "$1"
0 голосов
/ 17 апреля 2019

Вот один из способов сделать это ..

ls -lah $1 | awk '{print $5}'
...