Найти путь, который имеет определенный подкаталог

Как описано в отчете об ошибке стартовой панели, необходимо добавить pci=noaer в командную строку ядра.

Резюме, взятое из приведенного выше сообщения об ошибке:

  1. Edit /etc/default/grub. Измените строку, начинаюшуюся с GRUB_CMDLINE_LINUX_DEFAULT на

     GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=noaer"
    
  2. Запустите sudo update-grub.

  3. Перезагрузить.

Я рекомендую вам сначала перезагрузиться, не внося вышеуказанных изменений, и вместо того, чтобы позволять Grub автозагружаться, редактировать спецификацию загрузки; отредактируйте строку, содержащую quiet и splash, добавив (пробел и) pci=noaer.

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

1
29.03.2019, 20:31
2 ответа

Для этого вам понадобится только find :

find A -type d -regextype posix-extended -regex ".*/C/.*"

Для следующей структуры каталогов

A                                                                                                                                                                                                                  
└── B                                                                                                                                                                                                              
    ├── C                                                                                                                                                                                                          
    │   ├── D                                                                                                                                                                                                      
    │   └── E                                                                                                                                                                                                      
    ├── C1                                                                                                                                                                                                         
    │   └── E                                                                                                                                                                                                      
    └── O
        └── P

он вернет:

A/B/C/E
A/B/C/D
0
27.01.2020, 23:25

Хотя ответ ka3ak работает, find поставляется с параметром «-path», поэтому вы можете просто использовать

find . -type d -path "*/c/*"

-path, кажется, также немного быстрее:

[hexathos:~/test] $ time find . -regextype posix-extended -regex ".*/c/.*"
./a/b/c/d
./a/b/c/e

real    0m0,013s
user    0m0,010s
sys 0m0,000s
[hexathos:~/test] $ time find . -type d -path "*/c/*"
./a/b/c/d
./a/b/c/e

real    0m0,012s
user    0m0,007s
sys 0m0,003s
4
27.01.2020, 23:25

Теги

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