Удалить несколько символов @ из файла

Изменение прав доступа к файлу psmouse.koмало что даст, кроме того, что кто-то сможет изменить файл (, что было бы плохо! )Вы можете разрешить им запускать modprobeи rmmod, но это тоже будет опасно, потому что теоретически они могут загружать и выгружать любой модуль ядра, установленный в вашей системе!

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

  1. Сделать скрипты:

    /usr/local/bin/load _mouse.sh

    #!/bin/sh
    /sbin/modprobe psmouse
    

    /usr/local/bin/unload _mouse.sh

    #!/bin/sh
    /sbin/rmmod psmouse
    

    Скрипты должны находиться в общедоступном -доступном каталоге (Мне нравится /usr/local/bin, но это личное предпочтение ), с владельцем root:rootи разрешениями 755. rootВладение не требуется, но людям будет труднее вносить изменения :Помните, что эти сценарии нужно запускать от имени суперпользователя, поэтому вам нужно, чтобы они были безопасными!

  2. Разрешить пользователям запускать их

    Используяvisudo(или добавив перетаскивание -в файле в /etc/sudoers.d), добавьте следующее:

    username ALL=(root) /usr/local/bin/load_mouse.sh,/usr/local/bin/unload_mouse.sh
    

    Замените usernameсоответствующим именем пользователя или %groupname, если вы хотите, чтобы члены группы могли запускать это.

    Теперь пользователи должны иметь возможность запускать скрипт, используяsudo /usr/local/bin/load_mouse.sh(илиunload_mouse). Если /usr/local/binнаходится в их PATH, то sudo load_mouse.shтоже будет работать.

  3. (необязательный )Обернуть вызов sudo

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

    /usr/local/bin/mouse _на

    #!/bin/sh
    sudo /usr/local/bin/load_mouse.sh
    

    /usr/local/bin/мышь _выкл

    #!/bin/sh
    sudo /usr/local/bin/unload_mouse.sh
    

    Они не должны иметь каких-либо особых прав, но я предпочитаю, чтобы они принадлежали root:rootс разрешениями 755. Теперь пользователи могут просто набирать mouse_onи mouse_off(, если вы разрешили им запускать сценарии!)

0
21.09.2020, 17:23
1 ответ

В вашем файле отсутствуют символы @. Это визуальное представление, которое редактор Vim использует, когда сталкивается с «очень длинными строками».

Возможно, вам будет легче перемещаться по файлу, если сначала использовать

:set display+=lastline

но вы также можете переформатировать документ JSON, чтобы его было легче читать, с помощью утилиты jq, например:

jq. myfile.json >newfile.json

(, а затем отредактируйте newfile.jsonвместо ). Компактный формат файла JSON можно восстановить с помощью

jq -c. newfile.json >compact.json

Обратите внимание, что компактный и «красиво напечатанный» варианты JSON эквивалентны, и синтаксическому анализатору JSON все равно, какой из них он анализирует.

Дополнительную информацию о работе с длинными строками в Vim можно найти в «Vim fandom wiki»:https://vim.fandom.com/wiki/Working_with_long_lines

0
01.04.2021, 09:06

Теги

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