Awk и sed не работают, как я ожидал, с neofetchLinux

Ответить
Anonymous
 Awk и sed не работают, как я ожидал, с neofetch

Сообщение Anonymous »

Я пытаюсь сделать neofetch отчет о том, что время безотказной работы моего компьютера составляет 13,7 миллиардов лет, для художественного проекта. Я использовал awk, чтобы получить время безотказной работы при одном вызове команды (поскольку время безотказной работы постоянно меняется), а затем попытался с помощью sed заменить вывод времени безотказной работы neofetch на 13,7 миллиардов лет.
Это прекрасно работает, если я делаю это самостоятельно в терминале:

Код: Выделить всё

[nixos@nixos:~]$ neofetch uptime | sed 's/30 mins/13.7 billion years/'
uptime: 13.7 billion years
Но когда я пытаюсь сделать это с переменными, это не работает:

Код: Выделить всё

neofetch uptime | sed 's/$(neofetch uptime | awk '/uptime:/ {print $2, $3, $4, $5}')/13.7 billion years/'
sed: can't read {print: No such file or directory
Изменить:

Код: Выделить всё

neofetch uptime | sed "s/$(neofetch uptime | awk '/uptime:/ {print $2, $3, $4, $5}')/13.7 billion years/"
uptime: 14 mins
завершить редактирование
Выполняем это с помощью скрипта: (script.sh):

Код: Выделить всё

uptime_value=$(neofetch uptime | awk '/uptime:/ {print $2, $3, $4, $5}')
echo "Found uptime_value:"
echo ${uptime_value}

neofetch uptime | sed "s/${uptime_value}/13.7 billion years/"
Выход:

Код: Выделить всё

Found uptime_value:
34 mins
uptime: 34 mins
Что я делаю не так?

Подробнее здесь: https://stackoverflow.com/questions/790 ... h-neofetch
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»