• Меню правой кнопки мыши не убирается, тачпад firefox, manjaro, как его отключить или исправить?

    xotkot
    @xotkot
    Damian Lewis,
    один из плюсов из за которых мне нравится Арч это удобство и лаконичность его пакетного менеджера(ну и разных оберток над ним для аура)
    например, из кода выше для убунту:
    sudo add-apt-repository ppa:mozillateam/ppa
    sudo apt-get update
    sudo apt install firefox-esr

    то в Арч это будет:
    paru -Syu firefox-esr
    синхронизироваться(-S) с удалённым репозиторием и загрузить(-y) базу пакетов, а после обновить(-u) все установленные пакеты, попутно скачать и установить пакет firefox-esr из аура
  • Меню правой кнопки мыши не убирается, тачпад firefox, manjaro, как его отключить или исправить?

    xotkot
    @xotkot
    Damian Lewis,

    Arch Linux ...
    ESR версия с долгосрочной поддержкой можно поставить из репы
    sudo apt ...
    Это я так, к слову перечислил варианты на будущее.

    будущее это если перейдет на убунту ?
    у Arch все можно найти, главное не забывать заглядывать в библию арчеводов - арчвики, в данном случае - Firefox#Installing, где можно найти и dev и esr и nightly с beta и даже со специальным патчем от opensuse
  • Правильное использование diff?

    xotkot
    @xotkot
    Zzzz9,
    Лучше посоветуй как ему убрать неразрывный пробел нулевой ширины FEFF

    думаю самое простое удалить через редактор кода где видно все эти символы, вот кстати статья по этому поводу на хабре - Текст, которого нет
  • Правильное использование diff?

    xotkot
    @xotkot
    cptedward_kenway, если подразумевается работа с виндовымы/яблочными текстовыми данными то нужно предварительно привести их к юникосовому формату с помощью dos2unix/mac2unix, если нужно обратно то unix2dos/unix2mac.
  • Правильное использование diff?

    xotkot
    @xotkot
    если делать через awk то лучше наверное так:
    diff a.txt u.txt | awk '$1=="<"{print substr($0,3)}'

    мы же наверняка не знаем есть ли в названиях файлов(??) пробелы, поэтому просто обрезаем начальные символы, а не выводим вторую($2) колонку.
  • Правильное использование diff?

    xotkot
    @xotkot
    Adamos, да, кстати, указание './' думаю здесь уж точно лишнее )
  • Правильное использование diff?

    xotkot
    @xotkot
    Adamos, вы правы, то просто когда пробовал пример автора в котором нету уникальных для второго файла записей, чего-то подумал про вывод только одного столбца
    60eeb8d9adae2523910687.png
  • Правильное использование diff?

    xotkot
    @xotkot
    Adamos, несколько колонок это если не указывать параметры
    у меня по крайней мере -3 выводит только одну колонку

    п.с.
    $ comm --version
    comm (GNU coreutils) 8.32
    Copyright (C) 2020 Free Software Foundation, Inc.
    ...
  • Как с помощью цикла while, команды dig вывести в файл ips.txt A-записи домена, после чего на следующей строке PTR-запись IP?

    xotkot
    @xotkot
    ngalaktionov,
    я лучше буду руководствоваться не заданиями, а целями.

    давайте пробежимся по условию вашего задания

    если присмотреться к условию задания и к вашему решению то оно либо не совсем корректно сформулировано либо решение не отвечает оному.
    во первых, нужно сохранить результирующие данные в файл ips.txt, а вы куда сохранили ? results.txt ? серьёзно ?

    во вторых, в описании приведён пример итогового файла:
    173.194.222.139
    lo-in-f113.1e100.net.

    то есть сначала идёт IP а ниже его PTR-запись, у вас же в выводе программы будет наоборот, сначала PTR а после IP, это кстати оговорено и в условии ниже:
    сохранить в ips.txt каждый ip-адресс, и PTR-запись , соответствующую этому ip(строкой ниже).

    то есть нужно сохранить PTR-запись строкой ниже, после IP.
  • Как сделать возможным вывод программы в консоль?

    xotkot
    @xotkot
    gohellp,
    кстати, в данном случае можно упустить wait так как
    tail -f файл
    или
    cat fifo-файл
    и так будут удерживать главную программу от закрытия.
    но если вы чтение тоже захотите запустить в фоновом(&) потоке
    cat $LOG | analysisLogs &
    # ... код
    wait

    чтобы ниже написать еще какой-то код, то тогда нужно про него(wait) не забывать.
  • Какие дрова ставить в убунте 20.04 на ноуте чтоб все нормально работало?

    xotkot
    @xotkot
    идеально конечно было бы перейти на wayland тем более что В Ubuntu 21.04 решено включить Wayland по умолчанию правда тока не для nvidia которая с вяленым плохо дружат.
    для Arch/Manjaro вяленого для браузеров нужно отдельно включать, в принципе как и для других дистров:
    Chromium#Native_Wayland_support
    Firefox#Wayland

    чтобы проверить работает ли графическая программа под wayland(W) или иксами(X) я обычно для этого запускаю в консоли xwininfo после чего если навести курсор на графический интерфейс нужной программы и щелкнуть по ней мышью то если это W то ничего не выйдет, а если X то выведет информацию в консоли.

    п.с.
    How to enable/disable wayland on Ubuntu 20.04 Desktop
  • Как сделать возможным вывод программы в консоль?

    xotkot
    @xotkot
    gohellp, можно конечно и через переменную сделать но это будет не так красиво да и не по феншую, кстати здесь мы пишем в ОЗУ так как /tmp у большинства дистрибутивов примонтирован в оперативной памяти.
    Если же не хочется вообще писать данные на диск или в озу, так как логи обычно склонны к накоплению если их не чистить да или просто если ненужны, то можно просто использовать именованный канал(FIFO-файлы) с которым можно работать как с файлом(читать/писать) но при этом он будет выступать просто в роли промежуточного буфера, для этого в нашей программе нужно поменять всего две строчки(создать именованный канал и вместо tail использовать обычный cat )

    #!/usr/bin/env bash
    
    # бот1 и бот2 просто постоянно выводят рандомно числа от 0 до 9 с интервалом в 2 секунды
    bot1(){
    	while true; do
    		echo "Bot1: $[RANDOM%10]"
    		sleep 2
    	done
    }
    
    bot2(){
    	while true; do
    		echo "Bot2: $[RANDOM%10]"
    		sleep 2
    	done
    }
    
    # обший лог-файл куда будем писать логи от ботов
    LOG=/tmp/botsLog.txt
    
    # удаляем лог-файл
    rm -rf $LOG
    
    # создаём именнованный канал (FIFO-файл)
    mkfifo $LOG
    
    # запускаем ботов паралельно и в фоновом(&) режиме, а также начинаем выводит от них информацию на консоль и писать в общий файл
    bot1 | tee -a $LOG &
    sleep 1
    bot2 | tee -a $LOG &
    
    # функция анализа поступающих данных
    analysisLogs() {
    	# запускаем постоянное построчное чтение поступающих данных в функцию
    	while read -r data; do
    		# здесь мы задаём фильтры и то что выполнить если сработает условие
    		case "$data" in
    			"Bot1: 0" ) echo "Бот 1 выдал ноль"
    				;;
    			"Bot2: 0" ) echo "Бот 2 выдал ноль"
    				;;
    		esac
    	done
    }
    
    # читаем файл(FIFO-файл) и передаём появляющиеся данные в функцию analysisLogs
    cat $LOG | analysisLogs 
    
    # это необходимо чтобы главная программа преждевременно не завершилась пока не завершаться запушенные в ней фоновые(&) потоки
    wait
    
    exit
  • Как сделать возможным вывод программы в консоль?

    xotkot
    @xotkot
    gohellp, писать и наблюдать логи это не проблема, например это можно сделать через тот же tee который выводит на консоль и сразу пишет в файл, на а затем сам лог-файл можно уже анализировать.
    node main.js | tee -a /path/to/log/file
    q="$IFS";IFS=$'\n';nodeLogsArr=(cat /path/to/log/file);IFS="$q"
    ...


    но если нужно в динамике - одновременно выводить на консоль, писать в файл и тут же сразу построчно анализировать поступающую информацию, то тут чуть сложнее, хоть и не немного, вот небольшой пример:
    #!/usr/bin/env bash
    
    # функции бот1 и бот2 которые постоянно выводят рандомно числа от 0 до 9 с интервалом в 2 секунды
    bot1(){
    	while true; do
    		echo "Bot1: $[RANDOM%10]"
    		sleep 2
    	done
    }
    
    bot2(){
    	while true; do
    		echo "Bot2: $[RANDOM%10]"
    		sleep 2
    	done
    }
    
    # обший лог-файл куда будем писать логи от ботов
    LOG=/tmp/botsLog.txt
    
    # удаляем лог-файл (если ненужно то закоментирвоать)
    rm -rf $LOG
    
    # запускаем ботов в фоновом(&) режиме, 
    # а также начинаем выводит поступающую от них информацию на консоль и писать в общий лог-файл
    bot1 | tee -a $LOG &
    sleep 1
    bot2 | tee -a $LOG &
    
    # функция анализа лог-файла (потока)
    analysisLogs() {
    	# запускаем постоянное построчное чтение поступающих данных в функцию
    	while read -r data; do
    		# здесь мы задаём фильтры и то что выполнить если совпадёт условие
    		case "$data" in
    			"Bot1: 0" ) echo "Бот 1 выдал ноль"
    				;;
    			"Bot2: 0" ) echo "Бот 2 выдал ноль"
    				;;
    		esac
    	done
    }
    
    # tail выводит поступающие данные по мере роста лог-файла (мониторит)
    # в данном случае мы передаём появляющиеся данные из файла в функцию analysisLogs
    tail -f $LOG | analysisLogs 
    
    # это необходимо чтобы главная программа преждевременно не завершилась 
    # пока не завершаться запущенные в ней фоновые(&) потоки
    wait
    
    exit

    с комментариями думаю будет понятней
    ctrl+c завершить скрипт

    upd: немного обновил скрипт
  • Как сделать возможным вывод программы в консоль?

    xotkot
    @xotkot
    gohellp,
    не совсем понятно, ваша программа(node main.js) генерирует данные постоянно(в потоке) и их нужно обрабатывать(в потоке) или она отработала один раз и сгенерировала данные а потом эти данные мы уже обрабатываем ?
  • Как сделать возможным вывод программы в консоль?

    xotkot
    @xotkot
    во первых, q=IFS замените на q="$IFS"
    во вторых,
    моё способ получения данных с программы на даёт ей выводить эти данные в консоль

    у вас каждая строка из вывода node main.js забивается в массив, что у вас не получается вывести на консоль ? объясните толком

    п.с.
    [["logs"==*"Process exit with code:"*]]
    что это ? Regex ? тогда это делается по другому:
    [[ "$logs" =~ РЕГУЛЯРНОЕ_ВЫРАЖЕНИЕ ]]
  • Проблема в процессоре?

    xotkot
    @xotkot
    с какой вероятностью это проблема процессора?

    вероятность 50/50 - либо проблема процессора либо нет

    а если серьезно, проц/память гнали ? биос пробовали сбрасывать ? температуру проца смотрели ?