Найдите файл волшебным соответствием шаблона

ulimit[113869] используется для временного установления ограничений на текущую оболочку и ее сыновья.

Ограничить количество процессов можно с помощью [113870]ulimit -u $желательно_number

Дополнительная информация в [113872]man ulimit[113873] и [113874]ulimit -a

1
19.01.2015, 19:54
3 ответа

Что-то вроде:

find . -print -exec файл {} \; | grep "PalmOS"

Чтобы также привести в порядок выходной канал через awk, добавьте:

| awk '{print substr($1,2,length($1)-2)}'

4
27.01.2020, 23:17

Я никогда не использовал virt-install , я всегда использую virsh define file.xml . Но взгляд на страницу man говорит мне, что --сетевой мост: tun0 ошибочен. Требуется --нетворк = мост = br0 .

Я не эксперт по libvirt / qemu , поэтому я не знаю, можно ли создать tun устройство и заставить libvirt использовать его. Обычно виртуальные интерфейсы создаются динамически при запуске виртуальной машины и подключении к мосту (и/или сети).

В XML-файле libvirt это выглядит следующим образом:

<interface type='bridge'>
  <mac address='52:54:00:42:c4:c8'/>
  <source bridge='br0'/>
  <model type='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
-121--230066-

Перейдите по ссылке, чтобы сбросить пароль администратора [звучит так, будто вы назвали свою учетную запись администратора «пользователь»:)]

https://askubuntu.com/questions/24006/how-do-i-reset-a-lost-administrative-password

После этого войдите в систему как пользователь-администратор и выполните следующие действия.

sudo usermod -aG sudo,adm fsolano

Теперь можно войти в систему как «fsolano» и выполнить команду sudo.

-121--4569-

Нет встроенной функции find для анализа содержимого файла, но можно вызвать file . Использование оболочки для объединения нескольких специфичных для задач программ ( поиск для обхода деревьев каталогов, файл для анализа содержимого файлов) - это способ выполнения задач Unix.

Вы хотите работать с файлами, для которых выходные данные команды file -b -- «$ filename» содержат последовательность приложения PalmOS . Это можно проверить с помощью сценария оболочки

case "$(file -b -- "$filename")" in *"PalmOS application"*) true;; *) false;; esac

Этот сценарий можно использовать в команде find , например:

find . -type f -exec sh -c 'case "$(file -b "$0")" in *"PalmOS application"*) true;; *) false;; esac' {} \; -print

Замените -print на действие (которое может быть другим -exec... ). Это второе действие выполняется только в том случае, если предыдущее действие имеет значение true, т.е. когда команда shell возвращает значение 0 (т.е. true).

Кроме того, в zsh можно разрешить оболочке выполнять обход каталога с помощью * * glob . . glob квалификатор ограничивает совпадения обычными файлами (например, -тип f для найти ).

for x in **/*(.); do
  [[ $(file -b -- $x) = *"PalmOS application"* ]] || continue
  …
done

В bash ≥4.3 для рекурсивного глоббинга можно использовать * * , но сначала необходимо включить опцию globstar . В bash 4,0-4,2 уже доступен globstar , но остерегайтесь того, что * * пересекает символические ссылки на каталоги. В ksh93 используйте set -o globstar вместо shopt -s globstar .

shopt -s globstar
for x in **/*; do
  [[ -f $x ]] || continue
  [[ $(file -b -- "$x") = *"PalmOS application"* ]] || continue
  …
done

Если имена файлов не содержат пробелов или :\" ', то альтернативный метод состоит в выполнении file над именами файлов и анализе выходных данных.

find -type f |
xargs file |
sed -n 's/:.*PalmOS application.*//p' |
xargs somecommand

Если имена файлов содержат пробелы, но не содержат новых строк или двоеточий, можно использовать оболочку для анализа.

find -type f |
while IFS=: read -r filename type; do
  case "$type" in
    *"PalmOS application"*)
      …;;
  esac
done
1
27.01.2020, 23:17

Это не использует find, но установка pattern и directory приведет к результатам, которые ваш вопрос будет задан:

pattern="PalmOS application"
directory=.

for f in $directory/*; do
    if [[ $(file -b $f) == "$pattern" ]]; then
        echo $f; 
    fi; 
done
0
27.01.2020, 23:17

Теги

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