Будет ли это работать?
[user2@server-01 ~]$ tree myDir/
myDir/
├── A
│ └── a.jpg
├── B
│ └── a.jpg
└── b.jpg
2 directories, 3 files
Если вы хотите получить список всех файлов в myDir, файлы во всех подкаталогах имеют одинаковые имена; Самый быстрый способ — grep -v?
Либо с помощью команды find, pipe и grep -v для полного пути к файлам, которые вы хотите исключить.
[user2@server-01 ~]$ find myDir/ | grep -v "myDir/A/a.jpg"
myDir/
myDir/A
myDir/b.jpg
myDir/B
myDir/B/a.jpg
или с помощью вашего метода дерева. Но добавьте флаг -f для вывода полного списка каталогов.
[user2@server-01 ~]$ tree -f myDir/ | grep -v "myDir/A/a.jpg"
myDir
├── myDir/A
├── myDir/B
│ └── myDir/B/a.jpg
└── myDir/b.jpg
grep -E может принимать несколько параметров, разделенных вертикальной чертой. И может использоваться вместе с флагом -v.
[user2@server-01 ~]$ tree -f myDir/ | grep -vE "myDir/A/a.jpg | myDir/B/a.jpg"
myDir
├── myDir/A
├── myDir/B
└── myDir/b.jpg
2 directories, 3 files
Если ваша учетная запись пользователя имеет права sudo
, вы можете войти в систему как ваша обычная учетная запись пользователя и повысить свои привилегии до привилегий root
sudo -s
Оказавшись здесь, вы можете запустить любые команды, необходимые для восстановления прямого доступа к вашей учетной записи тура. Например, чтобы изменить свой пароль,
passwd root
Вы можете выполнить действия, описанные в :https://linuxconfig.org/recover-reset-forgotten-linux-root-password
Короткий:
Мне пришлось сделать это один раз, у меня это сработало!