У меня есть файл с именем -

Я не знаю, откуда это взялось, но я хотел бы заглянуть внутрь, чтобы узнать больше об этом. Однако все команды Linux считают, что я имею в виду стандартный ввод, или они просто выдают мне сообщение об ошибке, когда я использую - или \- или $'-' .

tail -
tail \-
tail $'-'

2 ответа2

2

Самый простой способ - просто использовать представление имени файла, которое не буквально - . Например:

tail ./-

(где ./ явно ссылается на текущий каталог).

Кстати, это также самый простой способ предотвратить интерпретацию имен файлов как параметров (например, чтобы гарантировать, что файл с именем -f не интерпретируется как параметр, используйте вместо него ./-f ).

1

Попробуй это:

ls -i

Вы должны увидеть номер индекса файла:

10833498 -

затем

find . -inum 10833498 -exec tail '{}' \;

Это находит файл с inum и выполняет tail на нем.

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