Запитання з тегом «shell-script»

Запитання щодо скриптів оболонки, виконуваних файлів, які інтерпретуються оболонкою (bash, zsh тощо).

2
Сценарій Shell видає не знайдену помилку під час запуску з файлу sh. Але якщо ввести вручну, команди працюють
Я намагаюся використовувати наступний сценарій для створення карти сайту для свого веб-сайту. Коли я запускаю його, sh thsitemap.shя отримую подібну помилку і створює порожній файл sitemap.xml: thsitemap.sh: 22: thsitemap.sh: [[: not found thsitemap.sh: 42: thsitemap.sh: [[: not found thsitemap.sh: 50: thsitemap.sh: Syntax error: "(" unexpected Але як той самий користувач, …

6
Як перевірити, чи встановлена ​​файлова система зі скриптом
Я новачок в сценарії ... Я можу робити дуже основні речі, але зараз мені потрібна рука. У мене локальна файлова система, яка змонтується лише тоді, коли мені потрібно зробити резервну копію. Я починаю з цього. #!/bin/bash export MOUNT=/myfilesystem if grep -qs $MOUNT /proc/mounts; then echo "It's mounted." else echo "It's …

3
Як створити новий порожній файл у скрипті bash?
Я біг деяких третьої сторони Perl скрипта , написаний таким чином, що він вимагає вихідного файлу для прапора виведення, -o. На жаль, сценарій вимагає фактичного файлу, тобто користувачі повинні створити порожній файл filename.txtз 0 байтами, а потім ввести цей порожній файл у командному рядку сценарію perl script1.pl -o filename.txt Питання: …

4
Як розбити довгу рядок на кілька рядків у запиті read -p у вихідному коді?
Я пишу інсталяційний сценарій, який буде виконуватися як /bin/sh. Існує рядок із запитом на файл: read -p "goat can try change directory if cd fails to do so. Would you like to add this feature? [Y|n] " REPLY Я хотів би розбити цей довгий рядок на багато рядків, щоб жоден …

3
Доступ до змінної індексу масиву з циклу скриптів bash shell?
Я хочу отримати доступ до змінної індексу масиву під час циклу через масив у моєму скрипті bash shell. myscript.sh #!/bin/bash AR=('foo' 'bar' 'baz' 'bat') for i in ${AR[*]}; do echo $i done Результатом вищезазначеного сценарію є: foo bar baz bat Я шукаю результат: 0 1 2 3 Як я можу …

5
Як мені отримати лише PID, без додаткової інформації, процесу, що працює на порту 3000?
Я використовую CentOS 7. Я хочу отримати PID (якщо такий існує) процесу, що працює на порту 3000. Я хотів би отримати цей PID для збереження його до змінної в скрипті оболонки. Поки що маю [rails@server proddir]$ sudo ss -lptn 'sport = :3000' State Recv-Q Send-Q Local Address:Port Peer Address:Port Cannot …

5
Як я можу сортувати список за рівнем major.minor.patch та інколи правильно rc?
Я повинен сортувати наступний список зі скриптом оболонки і зробити останню версію внизу чи вгорі. Як би я це зробив лише з інструментами оболонки? release-5.0.0.rc1 release-5.0.0.rc2 release-5.0.0 release-5.0.1 release-5.0.10 release-5.0.11 release-5.0.13 release-5.0.14 release-5.0.15 release-5.0.16 release-5.0.17 release-5.0.18 release-5.0.19 release-5.0.2 release-5.0.20 release-5.0.21 release-5.0.22 release-5.0.23 release-5.0.24 release-5.0.25 release-5.0.26 release-5.0.27 release-5.0.28 release-5.0.29 release-5.0.3
18 shell-script  awk  sed  python  sort 

4
спосіб визначення поточної оболонки, сумісний з контрольними башизмами
В моєму випадку .profileя використовую такий код, щоб переконатися, що псевдоніми та функції, пов'язані з Bash, розміщуються лише у тому випадку, якщо оболонкою входу фактично є Bash : # If the current (login) shell is Bash, then if [ "${BASH_VERSION:-}" ]; then # source ~/.bashrc if it exists. if [ …

6
Чи слід цитувати змінні при виконанні?
Загальне правило сценаріїв оболонок полягає в тому, що змінні повинні завжди цитуватися, якщо немає вагомих причин цього не робити. Для отримання більш детальної інформації, ніж ви, мабуть, хочете дізнатись, подивіться на цей чудовий запитання та запитання: наслідки для безпеки забуття процитувати змінну в оболонках bash / POSIX . Розглянемо, однак, …

2
Чи є щось подібне до "split ()" JavaScript в оболонці?
Використовувати split()в JavaScript дуже просто, щоб перебити рядок у масив. Що з скриптом оболонки? Скажіть, я хочу це зробити: $ script.sh var1_var2_var3 Коли користувач надає такий рядок var1_var2_var3для script.sh, всередині скрипту він перетворить рядок у масив на зразок array=( var1 var2 var3 ) for name in ${array[@]}; do # some …

2
Як це "&" наприкінці моєї команди зробило сценарій ТАКЕ швидким?
Вирішуючи деякі проблеми CTF в Інтернеті, я натрапив на ситуацію, коли мені потрібно було змусити працювати над сервером. Це код, який я написав: #!/bin/bash for i in {0..9}{0..9}{0..9}{0..9} do echo "Now trying code.." echo $i echo "a fixed string" $i | nc localhost *port here* >> /tmp/me/dump.txt done Це було …

1
Як продовжити сценарій після перезавантаження машини?
Я пишу сценарій оболонки в баш. У якийсь момент сценарію він виявляє, що машину потрібно перезавантажити, перш ніж продовжувати. Він видає: sudo reboot Коли машина повертається вперед, цьому сценарію потрібно виконати більше роботи. Як налаштувати щось, щоб продовжувати виконувати роботу в цьому сценарії? Я припускаю, що є якесь місце, де …


2
Як скласти функції баш за допомогою труб?
У мене кілька функцій, визначених таким чином: function f { read and process $1 ... echo $result } Я хочу скласти їх разом, щоб виглядала виклик f | g | h. Яку ідіому потрібно використовувати для перетворення функції, що працює над аргументами, в аргументи для читання з stdin? Чи можна …

2
Розширення змінної оболонки та ефект глобула та розщеплення на нього
Цей пост насправді містить два окремі питання, але я думаю, що об'єднання їх разом дасть ще трохи контексту. Я пережив це питання щодо цитат навколо змінних, але я не зовсім розумію, що означає розширення змінної в першу чергу. Отже, моє перше питання: Що таке розширення розширення в розмові unix / …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.