Резервное копирование файлов на веб-сервере!и ~ - PullRequest
3 голосов
/ 27 ноября 2011

Мой веб-сервер LAMP отображает файлы резервных копий следующим образом:

  • !index.php
  • !~index.php
  • bak.index.php
  • Copy%20of%20index.php

Я попытался удалить с помощью rm, но он не может найти файлы.

Это как-то связано с bash или vim? Как это можно исправить?

Ответы [ 3 ]

2 голосов
/ 27 ноября 2011

Побег из символов (с обратной косой чертой), например:

[ 09:55 jon@hozbox.com ~/t ]$ ll
total 0
-rw-r--r-- 1 jon people 0 Nov 27 09:55 !abc.html
-rw-r--r-- 1 jon people 0 Nov 27 09:55 ~qwerty.php
[ 09:55 jon@hozbox.com ~/t ]$ rm -v \!abc.html \~qwerty.php
removed '!abc.html'
removed '~qwerty.php'
[ 09:56 jon@hozbox.com ~/t ]$ ll
total 0
[ 09:56 jon@hozbox.com ~/t ]$
0 голосов
/ 28 ноября 2011

Если вам не нравится специальная обработка символа !, используйте set +H в вашей оболочке, чтобы развернуть историю расширения. Дополнительную информацию смотрите в разделе «РАСШИРЕНИЕ ИСТОРИИ» в man bash.

Интересно, что я могу удалять файлы, начинающиеся с ~, без экранирования имен файлов.

0 голосов
/ 27 ноября 2011

Другой способ сделать это, кроме предложенного chown, - записать имена файлов в пределах "".

Пример:

rm "!abc.html" "~qwerty.php"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...