'ipkg ищут, xxx' всегда не дает ответа

Я создал новый файл с именем , новых , который сейчас принадлежит пользователем root, как видно ниже.

ls -lat new
-rw-r--r-- 1 root root 42 Sep  9 13:37 new

Теперь я вошел в систему как обычный пользователь и оттуда я пытался стереть содержимое этого файла, используя команду ниже.

sudo sh -c " > /root/new"

Теперь я могу убедиться, что содержимое стирается, снова войдя в систему.

ls -lat new
-rw-r--r-- 1 root root 0 Sep  9 13:42 new

Ссылки

Это ответ имеет следующее, чтобы сказать.

В качестве альтернативы вы можете запустить sudo sh -c "Echo 'Text' >> /file.txt", который также работает, но немного хлопот со всеми Интерполяция / сбежание, которое может вмешиваться, если у вас сложно выражения.

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

1
11.05.2014, 01:11
1 ответ

Я не думаю, что метаданные пакета включают списки файлов. Я считаю, что ipkg search предназначен только для получения имен пакетов для установленных файлов, аналогично rpm -qf . Возможно, вам потребуется указать полный путь к установленному файлу.

При поиске информации о пакете coreutils вы можете попробовать следующее:

ipkg info coreutils
ipkg status coreutils
ipkg files coreutils

Вы также можете увидеть, как результаты различаются для установленных и не установленных пакетов.

При поиске установленного пакета, содержащего определенный файл, вы можете использовать:

ipkg search /path/to/installed/file

Как вы указали в отредактированном вопросе, вы должны использовать звездочку , если вы не хотите указывать полное имя пути, например:

ipkg search \*file

ipkg search '*file'

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

Вам также может потребоваться проверить, есть ли у вас вообще метаданные для загруженных пакетов, и загрузить их:

ipkg update

Как мне найти, какой пакет установить, если мне нужна данная программа / утилита, которая является частью более крупной коллекции но не знаете, в каком пакете он содержится?

ipkg здесь не поможет, так как в нем нет данных. Я не думаю, что в вашем дистрибутиве есть инструмент вроде apt-file , который был бы решением. В этом случае вам обычно нужно вернуться к использованию веб-поиска, чтобы получить такую ​​информацию.

Источники:

Заявление об ограничении ответственности: я использую только opkg в OpenWRT, что очень близко к ipkg .

0
28.01.2020, 01:56

Теги

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