Я не понял код, который я использовал, как следующий
find . -type f -size 1033c ! -executable -exec file {} + | grep ASCII
Я понял первую часть о типе и размере, но где можно я полностью понимаю команду grep и что следует после! и что это означает Буду признателен за любую информацию о том, что делать, с чего начать Я действительно увлечен такими вещами, у меня много терпения и времени, любая помощь будет оценена Заранее спасибо
Вы можете использовать man
, чтобы прочитать руководство или «справочные страницы» для большинства команд.
Итак, если вы хотите узнать больше о grep
и о том, как его использовать, откройте терминал и запустите man grep
.
Команда find
находит и выводит список файлов или папок с указанными свойствами. В этом случае они должны быть файлом ( -типа f
) размером ровно 1033 байта, а не исполняемым (!
означает не ).
Для каждого из этих файлов выполняется команда после -exec
. В этой команде {}
обозначает имя файла. Вы можете запустить команду для каждого файла. Однако в этом случае +
указывает, что одна команда должна быть построена из имен файлов. Таким образом, если команда find
вернет mytext1.txt
, mytext2.txt
и mytext3.txt
, результирующая команда будет
file mytext1.txt mytext2.txt mytext3.txt | grep ASCII
Команда file
определяет тип файла, будь то текстовый файл, двоичный файл, исполняемый файл и т. Д. Таким образом, тип каждого из них определяется, и только строки, содержащие ASCII возвращаются командой grep
.
См. man find
, man file
и man grep
для объяснения каждого команд в этой единственной строке.