Вопросы и ответы - bash

Вопросы и ответы - bash



Есть ответ!
Я пытаюсь увеличить номер сборки на 1 с помощью командной строки. Вот содержание моего тестового файла: SOME_DUMMY_VALUE = -1; CURRENT_PROJECT_VERSION = 4; SOME_SECOND_DUMMY_VALUE = -1; CURRENT_PROJECT_VERSION = 4; Результат, который я хочу получить, следующий: SOME_DUMMY_VALUE = -1; CURRENT_PROJECT_VERSION = 5; SOME_SECOND_DUMMY_VALUE = -1; CURRENT_PROJECT_VERSION = 5; Я пытаюсь использова...
Есть ответ!
Я получаю количество появлений определенной строки в файле с: grep -o "\bstring \b" $file | wc -l Но когда у меня есть строка типа ":2_n", эта строка имеет ":" в начале, и в этом случае grep не работает, он дает мне счет 0 каждый раз, даже если мой файл имеет кратные ":2_n" Как я могу это сделать? Спасибо. Мой файл выглядит так :2_n nE Ea an no o:2 :2_n _na Если я использую grep, чтобы ув...
Есть ответ!
Bash скрипт для считывания имен из текстового файла. Я создал ниже скрипт и он выдает ошибку #!/bin/bash file=testname.txt while IFS= read -r line; do last=`awk -F ', ' '{ print $1 }'` $line echo $last first='awk -F ',' '{ print $2 }'' $line echo $first done < "$file"
Есть ответ!
Имеется папка структуры: folder/ file-1.txt file-2.txt file-3.doc nested-folder/ file-4.txt file-5.doc file-6.doc Нужно вывести в bash shell названия файлов относительно этой папки и только .txt. Пример: file-1.txt file-2.txt nested-folder/file-4.txt У меня получился такой скрипт: folder=(/path/to/folder/**/*.txt) for ((i=0; i<${#folder[@]}; i++)); do echo ${folder[...
Есть ответ!
У меня есть массив, который я хочу преобразовать в одну строку или переменную, разделенную запятыми, используя скрипт оболочки. У меня есть массив данных, и я просто печатаю значения, которые находятся внутри: echo "${data[*]}" Выход: /QE-CI-RUN-71/workspace/QE-AU/57/testng-results_1.xml /QE-CI-RUN-71/workspace/QE-AU/57/testng-results_2.xml Я просто хочу, чтобы вышеприведенный вывод хранил...
Есть ответ!
Почему символ . в зависимости от контекста выполняет разные задачи? Например в команде cd . он выполняет роль текущей директории, а в команде . patch/activate является аналогом команды source? P.S наверное я дилетант, но это действительно ломает мне мозг
Есть ответ!
Получаю syntax error: unexpected end of file при попытке выполнить скрипт. Что не так в скрипте? (проверял в https://www.shellcheck.net/ вроде как все зеленое) #!/bin/sh PROCESS_COUNT=$(ps aux | grep my-program | grep -v grep | awk '{print $2}' | wc -l) if [ $PROCESS_COUNT != 0 ] ; then ps aux | grep my-program | grep -v grep | awk '{print $2}' | xargs kill -9 fi FINAL_RESULT=$(ps aux ...
Есть ответ!
Здравствуйте. Только начал изучить баш и никак не могу придумать решение. Необходимо написать shell script, в который я могу передать некоторое количество файлов, и он выдаст мне самый новый по времени. Комманда ls -t | head -1 вернет мне самый новый файл в директории. Как написать скрипт, который можно было бы выполнить из консоли, передав список файлов (например, список из 2,3,4..9 файлов) [Коли...
Есть ответ!
Здравствуйте. Вопрос следующий. Допустим я в рекурсивной функции rec, пишу следующее определение массива: local dep = ('cat $1') (backticks естественно) таким образом все содержание файла переданным параметром я размешаю в массив. Далее снова вызываю rec, восстановится ли после возвращения исходное значение массива, точно также как в Си и Си++, ведь отличия только в синтаксисе заполнения массива, ...
Есть ответ!
Пользователь вводит с консоли имя файла и путь, куда необходимо переместить данный файл: #!/bin/bash echo "Input name of file"; read fileName; echo "Input path"; read path; mv $fileName $path; Проблема заключается в том, что $path принимает как строку. То есть mv работает как переименовывание, а не как перемещение. Как можно преобразовать $path в директорию?
Есть ответ!
Здравствуйте, знатоки. Подскажите пожалуйста, есть ли какая-то функция в BASH, которая по введенной дате (например 2015-06-07) определит название дня недели? Пример ввода: 1917-11-07 Вывод: Wednesday
Есть ответ!
Имеется такая команда: find / -iname "*.mp3" -exec ln -sv {} $(pwd)/folder/ \; Данная команда ищет все файлы с расширением .mp3, и создает на них символьные ссылки в каталоге folder. Вопрос: как, используя $RANDOM, правильно записать команду, чтобы имена созданных ссылок были случайными?
Есть ответ!
Я установил несколько псевдонимов в моем .bash_profile на моем Max OS X. Это работает, но когда я открываю новую вкладку, мне всегда приходится загружать свою .файл bash_profile с этой командой: source ~/.bash_profile Как я могу заставить его работать для каждого терминала, который я открываю, даже если я перезагружаю свой компьютер Mac или Linux?
Есть ответ!
В одном каталоге находятся два bash скрипта: a.sh #!/bin/bash echo "Hello, world" b.sh #!/bin/bash . a.sh При запуске b.sh выскакивает ошибка: user@comp: source b.sh b.sh:2: command not found: a.sh Подскажите, в чем может быть проблема?
Есть ответ!
Некая команда (пусть будет foobar) выводит таблицу с данными, например такую: col1 col2 col3 col4 1 aaa eee hhh 2 bbb fff iii 3 ccc ggg jjj Нужно. Как-то выбрать из этой таблицы значения столбцов 1 и 3 и записать в переменные var1 и var2 соответственно. То есть на выходе должно получиться var1="1 2 3", var2="eee fff ggg". Причем команду foobar можно запустить только 1 раз (она до...
Есть ответ!
Вот скрипт: #!/bin/sh for i in 1 2 4 8 do if [$i = 1 ] then make fakeroot time make -j --initrd --append-to-version=-custom kernel_image kernel_headers exit else make fakeroot time make -j $i --initrd --append-to-version=-custom kernel_image kernel_headers fi; done а вот что он выдает... 5: ./start.sh: [1: not found тоесть ругается конкретно на if - как правильно написать?
Есть ответ!
Какие недостатки несёт интерпретация сценариев? Почему в сценариях не реализуется поддержка чисел с плавающей запятой?
Есть ответ!
Как можно ускорить выполнение сценария в linux?
Есть ответ!
Недавно я наткнулся на информацию о том, что 15 мая в 02:09:25 Unix время будет равно 1010101010101010101010101010101в двоичном представлении. Я хотел выяснить, является ли это подделкой или нет, поэтому я пытался получить текущее время Unix в двоичном формате. Я пришел с простой подсказкой, как это: $ date +%s | xxd -b И я получил такой результат: 0000000: 00110001 00110100 00110011 00110001...
Есть ответ!
У меня есть сервер a test-lx, и сервер B test2-lx, я хочу передать файлы с сервера A на сервер B. При переносе файлов мне нужно будет создать driectory, только если он не существует, как я могу проверить, существует ли каталог во время lftp conenction? Как я могу получить несколько файлов в одной команде вместо того, чтобы делать это в 2 строках. Есть ли возможность использовать find -maxdepth 1 -...


Закрыть X