Я использую debugfs для определения имени файла с пробелами. Файл существует, но я получаю это сообщение (то же сообщение, если я меняю пробелы на \ или пишу имя файла между простыми кавычками):

$ sudo debugfs -R "stat /home/user/This is a test.txt" /dev/mapper/VolGroup00-lv_root
debugfs 1.44.5 (15-Dec-2018)
stat: Usage: stat <file>

Если я использую этот формат, я получаю эту ошибку:

$ sudo debugfs -R "stat $'/home/user/This\x20is\x20a\x20test.txt'" /dev/mapper/VolGroup00-lv_root 
debugfs 1.44.5 (15-Dec-2018)
$'/home/user/This\x20is\x20a\x20test.txt': File not found by ext2_lookup 

Если я использую этот формат, я получаю эту ошибку:

$ sudo debugfs -R "stat $'/home/user/This\024is\024a\024test.txt'" /dev/mapper/VolGroup00-lv_root 
debugfs 1.44.5 (15-Dec-2018)
$'/home/user/This\024is\024a\024test.txt': File not found by ext2_lookup 

Можно ли указать имя файла с пробелами с помощью debugfs?

1 ответ1

1

stat в debugfs ожидает ровно один аргумент (поэтому Usage: stat <file>). Предоставленная вами строка

/home/user/This is a test.txt

рассматривается как множество аргументов, разделенных пробелами. Инструмент поддерживает цитирование с двойными кавычками. Это будет работать:

sudo debugfs -R 'stat "/home/user/This is a test.txt"' /dev/mapper/VolGroup00-lv_root

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .