Ответы пользователя по тегу Командная строка
  • Как добавить право записи для группы в Bash скрипте?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    /var/log может содержать логи с небезопасной информацией. Поэтому давать доступ группе надо только если все кто в группе доверенные лица.
    Или запускай скрипт от рута.
    Ответ написан
    Комментировать
  • Какая утилита подобна wget, но умеет делать upload дерева файлов по https?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    прикол в том, что http в принципе не знает что такое файловая система, поэтому нужно писать скрипт, который оббежит ваши каталоги и зааплоадит файлы по одному.
    Либо архивировать каталог и заливать уже архив со всем внутри, как это делают
    Ответ написан
    Комментировать
  • Как подтвердить ввод пароля и перенаправить результат на вывод?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    Не понятна логика, зачем вам вообще использовать FIFO?
    Почему нельзя так:

    echo "Test123!"  | ./deposit --language English  new-mnemonic --num_validators 1 --chain goerli --eth1_withdrawal_address 0x416D2ec24Da09A321d14C19880850a41F80C9A33 --mnemonic_language English --keystore_password Test123!


    Может быть оно требует перевода строки, тогда так
    echo "Test123!
    "  | ./deposit --language English  new-mnemonic --num_validators 1 --chain goerli --eth1_withdrawal_address 0x416D2ec24Da09A321d14C19880850a41F80C9A33 --mnemonic_language English --keystore_password Test123!


    или

    echo -e "Test123!\n"  | ./deposit --language English  new-mnemonic --num_validators 1 --chain goerli --eth1_withdrawal_address 0x416D2ec24Da09A321d14C19880850a41F80C9A33 --mnemonic_language English --keystore_password Test123!
    Ответ написан
    Комментировать
  • Где найти такую CLI?

    saboteur_kiev
    @saboteur_kiev Куратор тега C++
    software engineer
    юзать environment variables?
    Ответ написан
  • Как подключить физический диск как папку home?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    много вариантов.

    1. Вам наверное будет проще перенести все файлы на другой диск, переразбить /dev/sda с нуля сразу на один большой раздел, отформатировать, примаунтить и скопировать файлы назад.

    2. Можно попробовать загрузиться в какой-нить gparted, сменить размер существующего раздела и затем поправить размер файловой системы через resize2fs

    3. У вас там уже используется LVM, можно заморочиться и сделать там разные варианты.
    Увеличить общий размер текущего logical volume, или сделать отдельную volume group с отдельным logical volume.. но там надо подумать как устройства распределить.
    Ответ написан
    Комментировать
  • Очистка почтового ящика через консоль в Windows?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    если ящик поддерживает POP3, то можно просто консольным клиентом, или даже телнетом, зная команды POP3 подключиться к серверу и выполнить такие действия.
    Или поискать консольный клиент для IMAP протокола, такое тоже есть.
    Ответ написан
    Комментировать
  • Как реализовать запуск приложения через консольную команду?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Все исполняемые программы ищутся в директориях, указанных в системной переменной PATH
    это делают и линукс и юникс и макос и винда.
    Винда, кроме того, будет еще автоматом искать исполняемые файлы в текущей директории, вдобавок, если указать файл без расширения, будет в алфавитном порядке еще искать .bac, .cmd, .exe , не помню что там еще.

    Понятно, что есть еще дополнения оболочки. У баш может быть кеш бинарников и алиасы, у винды в реестре есть алиасы и пути к конкретным бинарникам.
    Но база - переменная PATH
    Ответ написан
    Комментировать
  • Что лучше всего использовать при работе с данными?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Какие инструменты командной строки вы чаще всего используете при работе с большими данными?

    rar, tar+gzip, zip

    В чем их плюсы?

    Уменьшают размер больших данных
    Ответ написан
    Комментировать
  • Как делаются подсказки в консоли?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Автодополнение в linux shell это большой и длинный набор скриптов на bash, которые можно дописывать и самому.

    Если пишешь свою оболочку, то собственно можно и самому написать автодополнение по там.

    Не очень понятно как можно собраться писать свою CLI оболочку и не знать как в ней сделать реагирование на нажатие клавиш.
    Ответ написан
    2 комментария
  • Существует более мощный, чем nano текстовый редактор из командной строки?

    saboteur_kiev
    @saboteur_kiev Куратор тега SSH
    software engineer
    Безусловный лидер, это вообще-то vi/vim, но им нужно научиться пользоваться.
    Ответ написан
    Комментировать
  • CURL | Как скачать не зная версию?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    получаем ссылку для скачивания:
    curl https://api.github.com/repos/adoptium/temurin8-binaries/releases/latest?per_page=1|grep -oP 'download_url": "\K.*OpenJDK8U-jdk_x64_windows_hotspot.*msi(?=")'


    дальше можно в переменную:
    URL=$(curl https://api.github.com/repos/adoptium/temurin8-binaries/releases/latest?per_page=1|grep -oP 'download_url": "\K.*OpenJDK8U-jdk_x64_windows_hotspot.*msi(?=")')
    curl -OL $URL


    или в xargs
    curl https://api.github.com/repos/adoptium/temurin8-binaries/releases/latest?per_page=1|grep -oP 'download_url": "\K.*OpenJDK8U-jdk_x64_windows_hotspot.*msi(?=")'|xargs curl -OL
    Ответ написан
  • Почему GitHub не предоставляет доставляет доступ к оболочке?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    потому что гитхаб это не виртуальный сервер, а удаленный репозиторий.
    Ответ написан
    Комментировать
  • Как узнать названия приложений для запуска их через команду sudo?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    набери
    ls /sbin
    и посмотри список "приложений".
    Можно также ls /bin и ls /usr/bin
    Ответ написан
    Комментировать
  • Можно ли командой удалить все метаданные у файлов?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    без использования доп.софта

    А команды это что по твоему?
    Ответ написан
  • Почему служебные символы работают не везде?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Перенаправление ">" говорит о том, что ты хочешь перенаправить stdout в конкретный поток/файл.
    Но конструкция [1-5].txt это не имя файла, это wildcard, который развернется в пять файлов. А ">" у тебя один.
    То есть просто неправильный синтаксис, потому что для ">" можно указать только одно имя потока/файла.

    Читай справку о командах и понимать, где можно указать несколько файлов, а где только один.

    Говоря про "служебные символ", следует почитать документацию и различать их.
    Есть wildcards, есть variable expansion, есть regular expression, есть специальные переменные, есть команды самого баш, есть bash expansion. Зная какие к чему относится, можно понимать где и как их применять.
    Ответ написан
    Комментировать
  • Linux: как выполнить копирование части логов из файла в новый файл по нескольким фильтрам?

    saboteur_kiev
    @saboteur_kiev Куратор тега Ubuntu
    software engineer
    почитайте про sed, как раз под вашу ситуацию

    sed -n '/19:00,/21:00/{/11.11.11.11\/111/p}' file.log > newfile.log
    Ответ написан
    Комментировать
  • Как сделать вхождение по TAB в терминале linux?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    bash completion - это большая библиотека функций, которые по tab умеют дополнять
    * имена алиасов
    * имена функций
    * имена переменных
    * названия команд
    * пути файловой системы
    * опции для некоторых команд.

    Можно почитать документацию, как добавить дополнение для вашей собственной команд - https://www.gnu.org/software/bash/manual/html_node...
    Ответ написан
    Комментировать
  • Перенос файлов между серверами без моего участия?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Отключаясь от сессии, вы посылаете своему шеллу и всем дочерним процессам (scp, rsync) сигнал SIGHUP.

    Есть несколько воркэраундов как этого избежать.

    1. Запускать процесс через nohup &
    2. Использовать менеджер сессий - screen или tmux
    3. Запустить процесс в фоне и заранее отвязать его от своего шелла ( &; disown )
    Ответ написан
    2 комментария
  • Как запустить уже остановленную программу в фоне не переходя в foreground?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Нужно понимать два момента

    команды jobs, bg и fg являются внутренними командами шелла, и работают с дочерними процессами именно этого шелла.
    Если вы приостановили дочерний процесс (Ctrl-Z) или запустили его сразу в бэкраунда (ping google.com &), то командой fg вы выводите его на передний план. Это все равно что в винде вы взяли и поставили мышкой фокус на окне блокнота, после чего нажимая клавиши вы будете писать в этом блокноте.

    А если вы приостановили процесс Ctrl-Z и продолжили его через bg, он будет продолжаться в фоне, а на переднем плане будет ваш шелл - вы можете писать другие команды. Все равно что мышкой в винде вы кликнули в рабочий стол рядом с блокнотом, и поэтому нажимая клавиши вы будете писать не в блокноте а на рабочем столе (стрелки по иконкам бегают, какие-то хоткеи могут работать, Enter запустит текущую иконку)

    Для понимания потренируйтесь так:

    sleep 100
    CTRL-Z
    jobs
    bg 1
    echo I am still in shell
    fg 1
    CTRL+C


    И второй момент - можно запустить программу в фоне, и отсоединить ее от текущего шелла вообще (запустить ее через nohup sleep 100 & и отключитья от сессии, или выполнить
    sleep 100 &
    jobs
    disown
    jobs
    ps aux | grep sleep

    в этом случае bg/fg уже не помогут, так как программа запущенная в фоне уже имеет другого родителя, и не подконтрольна внутренним bg/fg - вернуть ее как дочерний процесс под текущий шелл уже не выйдет.

    Поэтому Ctrl+C, Ctrl+Z - это просто сигнал который ты отправляешь в текущий "foreground" процесс, с которым ассоциирован stdin
    Ответ написан
  • Поясните пожалуйста bash скрипт?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    кода done < <(ls -1 "./my_temp_dir/")

    ls -1 выводит содержание каталога в одну строку по одному наименованию
    <(blabla) создает из команды поток, который передается как файловый десктриптор
    < перенаправление данных из файлового дескриптора в предыдущую команду
    done является частью цикла, поэтому перенаправление идет не в done а в весь блок цикла.
    Ответ написан
    Комментировать