Почему команда ls показывает удаленные файлы?

Когда я набираю ls в терминале, он показывает файлы, которые присутствуют, а также файлы, которые я удалил. Как просмотреть только текущие файлы и почему ls ведет учет удаленных файлов?

ls показывает имена удаленных файлов, за которыми следует тильда (~ ).

3
задан 22 October 2015 в 10:55

3 ответа

Можно использовать

printf '%s\n' *

echo *

ls -U

любой из тех, которые вместо ls ссылка здесь

~, символ может время выполнения кэш или файлы резервных копий .For, которые относятся здесь

, я отредактировал это после наблюдения комментария; используйте эту команду для удаления тех файлов резервных копий (файлы с ~ символ)

find ./ -name '*~' | xargs rm
0
ответ дан 22 October 2015 в 20:55
  • 1
    @AlexandrosMarkopoulos, это могло из-за этой библиотеки /usr/local/lib/libopen-pal.so.13, проверять на все версии ls -l /usr/local/lib/libopen-pal.so.13*, тогда переименовывают их пример sudo mv /usr/local/lib/libopen-pal.so.13 /usr/local/lib/libopen-pal.so.13.backup – user.dz 19 November 2016 в 00:17

ls делает не имена файла кэша. Это действительно показывает Вам точно, что в настоящее время находится в файловой системе. Однако как @Ravan подсказал, там может быть так же назван файлами в Вашем каталоге. Они - обычно кэши во время выполнения или блокируют файлы, созданные программами, такими как Vim и Emacs, но могли быть в значительной степени чем-либо. Например, если я делаю следующее в одном терминале:

$ touch foo
$ vim foo

Затем я буду видеть следующее в другом терминале:

$ ls -A
foo  .foo.swp

.foo.swp скрытый временный файл, который будет удален, если Vim выйдет приятно.

Такие файлы могут быть безопасно удалены, если они разбросаны от более ранних заседаний редактирования, которые больше не открыты. Просто удостоверьтесь Вы кавычка имена файлов, так как они могут содержать специальные символы как тильда (~):

$ rm '.foo~'
0
ответ дан 22 October 2015 в 20:55
  • 1
    Здорово! Наконец это работает. Могли Вы, добавляете эту информацию к своему ответу, таким образом, я мог принять его? – Alexandros Markopoulos 19 November 2016 в 02:25

Имя, сопровождаемое «~», является на самом деле файлом тайника. Когда Вы удаляете файл, это может все еще остаться как скрытый файл для наутилуса, но команда «ls» покажет им.

Пробег rm *~, чтобы удалить те файлы.

0
ответ дан 22 October 2015 в 20:55
  • 1
    Но у меня есть только PCI-e на моем сервере.. там возможность состоит в том, чтобы изменить его от cli? – Michu 14 November 2016 в 23:08

Другие вопросы по тегам:

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