«терминал» (физический компьютер) и «bash» (оболочка) совершенно разные. Я не совсем уверен, о чем вы спрашиваете, но вы можете добавить init = / bin / bash
в командную строку ядра, чтобы загружаться прямо в bash.
Обновление
благодаря @don_crissti за указание на то, что передача {}
в sh
является всегда неверно - исправление будет следующим:
find ~/Movies/ -type f -iname "*.avi" -exec sh -c "echo $1; file $1 | cut -d, -f5 | cut -d: -f2 | sed 's/ //g' | sed 's/X.264orH.264//g'" {} \;
Вы можете попробовать это - непроверено.
find ~/Movies/ -type f -iname "*.avi" -exec sh -c "echo {}; file '{}' | cut -d, -f5 | cut -d: -f2 | sed 's/ //g' | sed 's/X.264orH.264//g'" \;
find
: поиск всех файлов avi
в ~ / Movies /
echo {}
распечатать имя файла файл
с этим имя файла
вырезать -d, -f5
получить 5-е текстовое поле, вырезанное запятой (,) вырезать -d: -f2
получить второе текстовое поле, вырезанное двоеточием ( :) sed
удалить пробелы и возможное дублирование строки H264 из текста