есть ли способ редактировать файл, если нет vi, vim, joe, mcedit? Другими словами, есть ли способ редактировать файл, используя только команды оболочки?
Как я могу редактировать файл, если нет vi, vim, joe и т. д.?
5 ответов
в этом случае я бы попытался передать файлы и отредактировать их на другом компьютере, а затем передать их обратно. Если у вас есть ssh, у вас должен быть scp (я надеюсь), поэтому вы должны иметь возможность отправлять файлы внутрь и наружу. Если нет, вы также можете посмотреть на FTP для передачи файлов.
если нет, то я думаю, что ваш лучший вариант-попробовать использовать перенаправление cat, grep, sed, echo и I/O (особенно добавить с помощью >>
). И много временных файлов.
хотя если вы у вас есть доступ к perl (или что-то подобное), вы можете запустить его без аргументов, и он позволит вам ввести источник скрипта из стандартного ввода. После нажатия ctrl+d можно запустить сценарий. Этот метод можно использовать для создания файла. Это было бы более мощным, чем взлом-то в командной строке, как я уже упоминал раньше.
Я думаю, что вы могли бы сделать то, что вам нужно с grep
и perl
- посмотрите на линии, которые вы хотите с grep
редактировать эту строку с perl
(perl
может быть большой заменой sed
), а затем подтвердить, что вы не сделали больше изменений, чем вы предполагали, делая diff filename filename.new
. Если да, то сделайте изменения постоянными -mv filename.new filename
предполагая, что вы SSH в маршрутизатор, вы также можете использовать различные утилиты для передачи файла обратно и четвертый на ваш компьютер/маршрутизатор. Вы можете загрузить копию на свой компьютер, изменить ее, а затем SSH его обратно к маршрутизатору через SFTP (см. шпаклевка или WinSCP если вы пользователь Windows).
Если вы используете пользовательскую прошивку на маршрутизаторе / шлюзе, однако, вам может повезти. Существуют различные пакеты Optware, содержащие простой (и небольшой) текст редколлегия. В зависимости от ваших потребностей, вы можете получить nano
пакет, или просто пойти на busybox
, которая содержит vi
.
одним из способов было бы вывести результат Эха.
echo "foo" > bar.txt
это сделает файл под названием Бар.yxy с текстом, содержащим "foo".
вы уничтожили / bin или что-то? В противном случае, возможно, вы могли бы взломать что-то вместе с текстовыми утилитами в GNU Coreutils это должно быть стандартным в системе linux.
Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]