Фильтр вывода команды в Linux - PullRequest
0 голосов
/ 03 мая 2019

Как распечатать только хэш-сумму и имя файла с помощью команды sha256sum? Я хочу Hashsum и просто имя файла вместо полного пути.

Команда:

sha256sum /mydir/someOtherDir/file.txt

Выход:

123Hashsum /mydir/someOtherDir/file.txt

Желаемый вывод:

123Hashsum file.txt

Ответы [ 2 ]

1 голос
/ 03 мая 2019

Вы можете прочитать вывод в переменные

read -r sha file < <(sha256sum /mydir/someOtherDir/file.txt)

Затем вы можете прочитать только имя файла с помощью basename

echo "$sha" "$(basename "$file")"
0 голосов
/ 03 мая 2019

Вы можете попробовать использовать конвейер для sed, как показано ниже (работает только с абсолютными путями):

sha256sum /mydir/someOtherDir/file.txt | sed 's:/.*/::'
...