Здравейте! Вероятно използвате блокиращ рекламите софтуер. В това няма нищо нередно, много хора го правят.

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

  Ако не знаете как, кликнете тук

Помощ за команда в скрипт

feed Всичко свързано с Линукс. Новини, проблеми, въпроси.
Десктоп Линукс дистибуции, сървърни Линукс дистрибуции, Линукс дистрибуции с общо предназначение, Linux Mint, Ubuntu, Arch Linux, Mandriva, PCLinuxOS, openSUSE, Fedora, Red Hat Enterprise Linux, CentOS, Suse Linux Enterprise Server, Debian, Cross Linux from Scratch, Slackware, Gentoo. Графични среди, новини, игри, драйвъри, въпроси, десктоп, сървър, браузъри, помощ.
Alfonsu
Редовен потребител
Редовен потребител
Мнения: 195
Регистриран на: Сря Сеп 16, 2015 17:16
Репутация: 1020
пол: Мъж

Помощ за команда в скрипт

Мнение от Alfonsu »

Хванал съм се да си пиша скриптове за да ускоря нещата при инсталация на Arch. Като цяло се справям, обаче ударих на камък с едно нещо. Не знам как мога да хвана отговора на дадена команда и да редактирам текст във файл с нея.
Пример
команда: "whoami" трябва да ми върне отговор за името на потребителя в момента. С този отговор да речем че той е "Alfonsu" искам да редактирам текст във файл като използвам отговора за основа при замяна на текста.
Пример
sudo sh -c 'echo User=pc >> /etc/sddm.conf.d/kde_settings.conf
Създавам файл в който съм написал предварително "User=pc" искам "pc" да бъде заменено с отговора на "whoadmi" = "Alfonsu" автоматично.
За редактор на текст в терминал използвам "sed", като цяло мисля че му изчетох цялата документация, но не успях да намеря подобна команда"
Иначе ако искам ръчно да го направя, ще използвам следната:
sudo sed -i 's/pc/Alfonsu/g' /etc/sddm.conf.d/kde_settings.conf
Въпроса е как това да се случи автоматично за да не коригирам името в скрипта всеки път?
Прочетено: 271 пъти
Аватар
Zeroadhesion
       
Мнения: 19436
Регистриран на: Нед Апр 13, 2008 18:33
Репутация: 42022
пол: Мъж

Re: Помощ за команда в скрипт

Мнение от Zeroadhesion »

Код за потвърждение: Избери целия код

sudo sed -i "s/pc/$USER/g" /etc/sddm.conf.d/kde_settings.conf
Аватар
tmp_ZMx2fK6aL4
Ветеран
Ветеран
Мнения: 1023
Регистриран на: Пон Фев 21, 2022 15:29
Репутация: 10504
пол: Мъж

Re: Помощ за команда в скрипт

Мнение от tmp_ZMx2fK6aL4 »

@Alfonsu
Няма проблем да се разпише командата която искаш, и както са ти я дали над мен условно вярно.
Проблемът обаче с твоя завършен бъдещ скрипт е концепционално грешен да разписваш конкретни потребителски настройки в глобалните за всички. Не им е мястото там.
Hardware: Windows 11 Incompatible Certified!
Alfonsu
Редовен потребител
Редовен потребител
Мнения: 195
Регистриран на: Сря Сеп 16, 2015 17:16
Репутация: 1020
пол: Мъж

Re: Помощ за команда в скрипт

Мнение от Alfonsu »

Zeroadhesion написа: Чет Мар 10, 2022 03:00

Код за потвърждение: Избери целия код

sudo sed -i "s/pc/$USER/g" /etc/sddm.conf.d/kde_settings.conf
Благодаря много за помощта, работи перфектно.
Аз бях опитал същата команда само че:
sudo sed -i 's/pc/$USER/g' /etc/sddm.conf.d/kde_settings.conf
Само че тогава $USER си влиза буквално като текст за замяна. Хич не се сетих, че разликата между кавичките може да промени нещата :)
tmp_ZMx2fK6aL4 написа: Чет Мар 10, 2022 08:29 @Alfonsu
Няма проблем да се разпише командата която искаш, и както са ти я дали над мен условно вярно.
Проблемът обаче с твоя завършен бъдещ скрипт е концепционално грешен да разписваш конкретни потребителски настройки в глобалните за всички. Не им е мястото там.
Дам, вчера се замислих над това, че ако има по вече потребители, ще има и проблеми, понеже бутам глобално настройката за sddm, но това си го правя за лична употреба на компютър който винаги се ползва с един акаунт и реално това не е проблем за мен, обаче ако ми кажеш как е по правилно да се направи в случай че има по вече от един потребител ще ми е от полза, защото ще подобря скрипта и ще е помислено и за това. В този скрипт SDDM е единсвеното нещо което се пипа глобално и би могло да има проблеми при повече от един потребител.
Аватар
tmp_ZMx2fK6aL4
Ветеран
Ветеран
Мнения: 1023
Регистриран на: Пон Фев 21, 2022 15:29
Репутация: 10504
пол: Мъж

Re: Помощ за команда в скрипт

Мнение от tmp_ZMx2fK6aL4 »

В твоя конкретен случай искаш в kde_settings.conf да присвоиш User=избран_потребител, доколкото схващам.

Вместо да обработваш този ред с пост-скрипт и принципно неправилно от мултиюзер гледна точка, що не използваш динамична настройка директно в kde_settings.conf:

Код за потвърждение: Избери целия код

User[$ie]=${USER}
Когато се логнеш с Alfonsu ще е разпънато до User=Alfonsu, когато е с Пенчо, ще е разпънато до User=Пенчо

https://userbase.kde.org/KDE_System_Adm ... ic_Entries
Hardware: Windows 11 Incompatible Certified!
Alfonsu
Редовен потребител
Редовен потребител
Мнения: 195
Регистриран на: Сря Сеп 16, 2015 17:16
Репутация: 1020
пол: Мъж

Re: Помощ за команда в скрипт

Мнение от Alfonsu »

tmp_ZMx2fK6aL4 написа: Чет Мар 10, 2022 11:29 В твоя конкретен случай искаш в kde_settings.conf да присвоиш User=избран_потребител, доколкото схващам.

Вместо да обработваш този ред с пост-скрипт и принципно неправилно от мултиюзер гледна точка, що не използваш динамична настройка директно в kde_settings.conf:

Код за потвърждение: Избери целия код

User[$ie]=${USER}
Когато се логнеш с Alfonsu ще е разпънато до User=Alfonsu, когато е с Пенчо, ще е разпънато до User=Пенчо

https://userbase.kde.org/KDE_System_Adm ... ic_Entries
Мъдро решение...
Благодаря!
Просто никога не съм мислил за много потребители на един компютър и за това е недоизмислено в тази посока.
Нова тема Публикувай отговор

  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Линукс - инсталация, настройки, проблеми”