Предполагая, что ваша оболочка bourne-style, где переменные определяются с помощью var="value"
, с помощью GNU sed
вы можете сделать:
sed -i 's/ /="/;s/$/"/' file.conf
Or
sed -i -e 's/ /="/' -e 's/$/"/' file.conf
Or
perl -i -pe 's/ /="/;s/$/"/' file.conf
Все это в основном одна и та же идея. Как в GNU sed
, так и в perl
, ключ -i
будет редактировать файл на месте, а s/foo/bar/
заменит foo
на bar
в каждой строке ввода. Таким образом, первая замена заменит 1-й пробел на ="
, а вторая замена добавит "
в конце строки ($
).
Все это преобразует это:
key name
value pswd
key1 foo bar
В это:
key="name"
value="pswd"
key1="foo bar"
Скорее всего, это проблема с разрешениями вашего пользователя или правилами udev в Linux.
Для правильной работы adb
ваш пользователь должен быть добавлен в следующую группу :plugdev
Если это не сработает, я предполагаю, что в ваших правилах udev есть ошибка, или вам нужно их добавить:
$ sudo nano /etc/udev/rules.d/51-android.rules
-Поместите в файл следующее:
# My android phone
SUBSYSTEM=="usb",ATTR{idVendor}=="05c6",MODE="0660",GROUP="adbusers"
SUBSYSTEM=="usb",ATTR{idVendor}=="05c6",ATTR{idProduct}=="9091",SYMLINK+="android_adb"
SUBSYSTEM=="usb",ATTR{idVendor}=="05c6",ATTR{idProduct}=="9091",SYMLINK+="android_fastboot"
Я предполагаю, что Qualcomm, Inc.
— ваш телефон. Я могу ошибаться в этом. Просто замените 05c6
на идентификатор поставщика -и 9091
на идентификатор продукта -, который вы получаете из lsusb
, используя значения вашего телефона.
После этого запустите $ sudo udevadm control --reload-rules
и повторно -подключите телефон к компьютеру.