Tag: shell script

Почему этот перерыв не может избавить меня от этого цикла while-do?

код: Это для создания некоторой анимации, и когда переменная count $i получает 5, она останавливается и переносит будущий код оболочки. chars="/-\|" while :; do for (( i=0; i<${#chars}; i++ )); do sleep 0.1 echo -en "${chars:$i:1}" "\r" if [ $i == 5 ] then break fi done done # code below are never get executed.

Идиоматический метод bash для запуска необязательного действия без побочных эффектов на код выхода

Этот скрипт выйдет с результатом теста, который нежелателен с точки зрения абонентов. Как это должно быть реализовано вместо этого? #!/bin/bash test -n "" && echo "test passed"

Синтаксическая ошибка: неиспользуемая строка при использовании regexp_replace в сценарии bash

Я добавил код в конец скрипта bash, который я использую. Код, показанный здесь, предназначен для копирования csv в мою таблицу postgres, а затем удаления скобок, кавычек и двойных кавычек из столбца заголовка test_table. #copy csv to table psql -U postgres -d ebay_sold -c "COPY test_table (item_number,title,url,price) FROM '/home/perl_experiments/xmlcsv.txt' (DELIMITER('|'))" #Remove brackets, then double qotes, then […]

Сравнение значений в одной строке

В моем сценарии Im получает данные с веб-сайта, например: content=$(wget 10.0.1.5:8000/currentsong?sid=1 -q -O -); Это базовая информация о песнях на сервере shoutcast. Но есть проблема: мне нравится делать: если новое значение не соответствует старому значению в строке, сделайте что-нибудь. Как это: if [ $content.new != $content.old ]; then echo "New song info there.." else echo […]

Создать мигающий текст с эхо-символами

Я узнал о вариантах форматирования, используемых в сценариях оболочки, которые выглядят следующим образом: \033[37:40mAnyText\033[0m Теперь я хочу повторить текст следующим образом: echo -e "SomeText \033[5;31;47mMoreText\033[0m" Целое число 5 для мигания. Другое форматирование работает, но не мигает – почему?

Shell script: перенаправить вывод sql-запроса в файл

Внутри сценария оболочки, который я написал ниже sqlq(){ result=`sqlplus -S sss/eee@sid < $1|grep -v '^$'` echo $result } echo "select * from emp" > q.sql sqlq q.sql Мне нужно направить вывод в файл. Я попробовал spool внутри q.sql, как показано ниже, но не работал echo "SPOOL /tmp/test.txt; select * from emp';SPOOL off" > q.sql Помогите.

Максимальная длина символа для команды Read (ввод)

У меня есть скрипт bash, который имеет команды ввода. echo "Enter the id: " read id Я хотел бы знать, есть ли способ ограничить характер, который я могу ввести в id . Я имею в виду, например, он может ввести только 5 символов для id . это возможно? Спасибо.

Сценарий Bash не конвертирует переменные

Я пытался создать скрипт bash для запуска резервной копии моей учетной записи «Малина Pi» в моем блоке по FTP. Большинство из них работает, но по какой-то причине оно не преобразует переменные в текст, для которого они предназначены. Когда я запускаю этот скрипт: #!/bin/bash FILENAME=backup-$(date +%Y-%m-%d).tar.gz tar -czvf /tmp/$FILENAME /home/pi/ lftp -c 'open -e "set ftps:initial-prot […]

Сценарий bash, использующий цикл while, выполняется бесконечно

Ниже приведен сценарий bash. Его выполнение бесконечно. Я хочу выполнить скрипт только для 10 серверов, которые я сохранил в файле server.txt. пожалуйста помоги #!/bin/bash user=$1 pass=$2 if [ "$#" -ne 2 ];then echo "Please run the script with userid and password as arguments" fi cat servers.txt | while read host do { ./sandy_try.sh $user $host […]

скрипт задает вывод команды переменной

Я пишу простой скрипт, который запрашивает у пользователя информацию и сохраняет его как переменную, которая будет передана в качестве аргументов в другой команде. Одна из переменных хранит путь, который может содержать пробел. Используя тег -r команды read , путь извлекается как «сырой» вход, игнорируя символ escape-обратного слэша. Например: read -p "Enter checksum algorithm number (1, […]

Linux и Unix - лучшая ОС в мире.