Как удалить неудачный файл с пробелом в имени? [duplicate]

Когда Я установил с помощью sudo

sudo -E make install

Установил только мой внешний модуль и перезапустил depmod.

Запуск без флагов сохранения среды привел к переустановке всех модулей, встроенных в дерево исходных текстов ядра, которые я использовал для обновления ядра. Похоже, что при использовании sudo PWD может быть неправильно установлен к моменту внесения изменений в дерево ядра, возможно, но, возможно, это поможет кому-то еще, кто столкнется с этим.

1
07.08.2017, 12:03
2 ответа

Я нашел решение внизу предлагаемого дубликата:

  1. определить номера узлов

    ls -lbi
    
    25553  -rwxrwxrwx    1 guy guy          1 Sep  7 2016   \177\177
    25559  -rwxrwxrwx    1 guy guy       3220 Sep 27 2      \177\177\177\177\177
    
  2. то можно двигаться при возвращении изfind:

    find. -inum 25553  |xargs -I{} mv {} recovered.x
    find. -inum 25559  |xargs -I{} mv {} recovered.y
    
0
27.01.2020, 23:18

Синтаксис $'\ooo'(из ksh93, который теперь встречается в большинстве современных оболочек, подобных Bourne -, включая zsh, bash, mksh, FreeBSD sh), использует стандарт (. ] как в C и большинстве других языков )в отличие от синтаксиса echoдля восьмеричного перехода. Итак, за \следует до 3 восьмеричных цифр:$'\177'. $'\0177'будет похоже на $'\017'7. Так:

ls -ld $'\177\177'
mv $'\177\177' better-name

(обратите внимание, что \177, также известный как ^?или DELсимвол в ASCII, является не символом Backspace/ ^H/ BS/ \10)

4
27.01.2020, 23:18

Теги

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