стать первыми X символов от команды кошки?

Найдите файл измененным в течение X минут под путем /

find /path -cmin -X

Sign before minute:
    + more than X minutes / over X minutes
    - less than X minutes / within X minutes
   (no sign) exact

Пример: найдите все файлы в/var/log (включая подdir) измененными в течение прошлых 30 минут

find /var/log -cmin -30

Найдите файл с размером больше X под путем /

find /path -size +X<unit>

Sign before size:
    + larger than
    - less than
   (no sign) exact

<unit> :
    b = block (default,512byte)
    c = byte
    w = word (2-byte)
    k = kbyte
    M = Mbyte
    G = Gbyte

Пример: найдите все файлы в/var/log (включая подdir) больше, чем 50k

find /var/log -size +50k

Объединение

Пример: найдите все файлы в/var/log (включая подdir) больше, чем 50k измененный в течение прошлых 30 минут

find /var/log -cmin -30 -size +50k

Если Вы хотите включать 50k в свой результат, измениться на

find /var/log -cmin -30 -size +49k

PS: Постарайтесь не делать find / ..... как не только будет требоваться много времени, это также включает каталоги (/dev,/sys,/proc...) обычно не подходящий для поиска.

47
14.11.2014, 06:06
7 ответов

Старый зритель изображений GNOME глаз GNOME , кажется, автоматически перезагружает изображение, когда он редактирует в программе, такой как GIMP. Также есть также плагин перезагрузки, чтобы вы могли использовать кнопку для перезагрузки изображения:
enter image description here

работает в версии 3.8.2

-121--24295-
head -c 50 file

Это возвращает первые 50 байтов.

В виду, что команда не всегда реализована одинаково для всех ОС. На Linux и MacOS он ведет себя таким образом. На Solaris (11) необходимо использовать версию GNU в / usr / gnu / bin /

64
27.01.2020, 19:34

Большинство ответов до сих пор предполагает, что 1 байт = 1 символ, который не может иметь место, если вы используете локаль неASCII.

А немного больше устойчивого способа сделать это:

testString=$(head -c 200 < "${filename}") &&
  printf '%s\n' "${testString:0:50}"

Примечание, которое это принимает:

  1. Вы используете ksh93, удар (или недавнее zsh или mksh (хотя единственный многобайтовый набор символов, поддерживаемый , mksh является UTF-8 и только после того, как устанавливает-o utf8-метод )), и версия голова , который поддерживает -c (большинство делает в наше время, но не строго стандартное).
  2. текущая локаль собирается в то же кодирование файлом (локаль charmap типа и файл - "$filename" проверить это); в противном случае установить его с т.е. LC_ALL=en_US.UTF-8 )
  3. я взял первые 200 байтов файла с голова , приняв худший чехол UTF-8, где все символы кодируются на самое большее 4 байтах. Это должно покрыть большинство чехлов, о которых я могу думать.
5
27.01.2020, 19:34

Ваша команда работает Команда работает, если вы используете трубку для передачи данных к ней:

cat ${file} | cut -c1-50 

или, избегая бесполезного использования CAT и сделать его немного безопаснее:

cut -c1-50 < "$file"

Обратите внимание, что команды выше Будет напечатать первые 50 символов (или байтов, в зависимости от вашего Резакцию ) каждой входной линии . Он должен делать то, что вы ожидаете, если, как вы говорите, ваш файл - одна огромная линия.

31
27.01.2020, 19:34
dd status=none bs=1 count=50 if=${filename}

Это возвращает первые 50 байтов.

8
27.01.2020, 19:34
grep -om1 "^.\{50\}" ${filename}

Другой вариант (для первой строки в файле)

(IFS= read -r line <${filename}; echo ${line:0:50})
2
27.01.2020, 19:34

Вы можете использовать SED для этого, который будет решать проблему довольно легко

sed -e 's/^\(.\{50\}\).*/\1/' yourfile
-2
27.01.2020, 19:34

1. Для файлов ASCII выполните , как говорит @DisplayName:

head -c 50 file.txt
Например,

распечатает первые 50 символов файла file.txt.

2. Для двоичных данных используйте hexdump, чтобы распечатать их в виде шестнадцатеричных символов:

hexdump -n 50 -v file.bin
Например,

распечатает первые 50 байт файла file.bin.

Обратите внимание, что без подробной опции -vhexdumpзаменяет повторяющиеся строки звездочкой (*). См. здесь :https://superuser.com/questions/494245/what-does-an-asterisk-mean-in-hexdump-output/494613#494613.

1
27.01.2020, 19:34

Теги

Похожие вопросы