Вопросы с тегом «shell-script»

Вопросы о сценариях оболочки, исполняемых файлах, которые интерпретируются оболочкой (bash, zsh и т. Д.).

6
Слишком много строк shebang (объявление скрипта) - есть ли способ уменьшить их количество?
У меня есть проект, состоящий из около 20 небольших .shфайлов. Я называю их «маленькими», потому что обычно ни один файл не содержит более 20 строк кода. Я выбрал модульный подход, потому что, таким образом, я верен философии Unix, и мне легче поддерживать проект. В начале каждого .shфайла я ставлю #!/bin/bash. …

2
Почему мой скрипт с именем «killl» не работает, но после переименования работает отлично?
Рассматриваемый скрипт завершает последний процесс на моем локальном порте 8080. #!/bin/bash x=$(lsof -i:8080 | tail -1 | awk '{print $2}') kill -9 $x Это не сработало, если сценарий был назван «killl» (получите? Kill Latest?). Это дало мне подсказку для cmdsubst> переименования скрипта в «asdf», все работает. Есть ли объяснение этому …
12 shell-script  osx 

1
Как скопировать все файлы в папке, кроме файлов, которые записываются?
Я загружаю несколько файлов в папку downloadingчерез HTTPie . Сценарий bash предназначен для обработки загруженных файлов, и я попытался скопировать загруженные файлы в другую папку как find /folder/downloading -type f -exec mv '{}' /folder/downloaded \; но это также копирует файлы, которые еще не были закончены. Я пытался ограничить передачу старых …


3
Как удалить символ точки из строки без повторного вызова sed или awk?
У меня есть файл с именем, hostlist.txtкоторый содержит такой текст: host1.mydomain.com host2.mydomain.com anotherhost www.mydomain.com login.mydomain.com somehost host3.mydomain.com У меня есть следующий маленький скрипт: #!/usr/local/bin/bash while read host; do dig +search @ns1.mydomain.com $host ALL \ | sed -n '/;; ANSWER SECTION:/{n;p;}'; done <hostlist.txt \ | gawk '{print $1","$NF}' >fqdn-ip.csv Какие выходы …

4
Вставить текст под конкретным номером строки
Я работаю над сценарием bash, который будет разбивать содержимое текстового документа в зависимости от данных в строке. Если содержимое исходного файла было в соответствии с 01 line 01 line 02 line 02 line Как я могу вставить в строку 3 этого файла, используя bash, чтобы привести к 01 line 01 …

4
Пример использования / практический пример для встроенного в Bash exec
Учтите это из документации встроенного в Bash exec: exec заменяет оболочку без создания нового процесса Пожалуйста, предоставьте пример использования / практический пример. Я не понимаю, как это имеет смысл. Я гуглил и нашел про перенаправление ввода / вывода . Вы можете объяснить это лучше?


1
Знать, какой процесс делает ввод / вывод без iotop
В Linux я хочу знать, какой процесс использует пропускную способность моего дискового ввода-вывода. Я знаю, что могу использовать, iotopно у меня есть машина, которая по разным причинам iotopне может быть установлена. Как я могу вручную получить эту информацию? (Как iotopсебя продвигает?)

7
Как мне безопасно получить версию ksh?
Как я могу безопасно получить версию ksh из сценария ksh? Я видел следующие решения : ksh --version echo ${.sh.version} echo $KSH_VERSION И учитывая правильные обстоятельства, каждый из них работает правильно. Тем не менее, я забочусь о неидеальном случае. В частности, есть несколько машин, с которыми я работаю, которые имеют более …

4
Рекурсивно создавать каталоги для всех писем
Я хочу создать каталог таким образом, чтобы мне нужно было пометить каталоги из aв z. Внутри каждого из этих каталогов мне нужно создать подкаталоги, чтобы они были помечены как aaи abт. Д. Так, например, для каталога m, мои подкаталоги будут помечены как ma, mbДО mz.

7
Кратчайший способ извлечь последние 3 символа базового (без суффикса) имени файла
Я пытаюсь установить переменную в скрипте sh для последних 3 символов базового имени файла (под базовым именем я имею в виду без пути и без суффикса). Я преуспел в этом, но, просто из любопытства, мне интересно, есть ли более короткая, единственная команда, которую я могу использовать. Первоначально у меня был …

2
найти и удалить дубликаты в каталоге
У меня есть каталог с несколькими файлами IMG, и некоторые из них идентичны, но все они имеют разные имена. Мне нужно удалить дубликаты, но без внешних инструментов только с помощью bashскрипта. Я новичок в Linux. Я пытался использовать вложенный цикл для сравнения md5сумм и в зависимости от результата удаления, но …

2
Обнаружить, если работает в виртуальном терминале?
Я хотел бы автовход , чтобы tty1при входе в систему , а затем использовать , vlockчтобы зафиксировать ее. Как я могу определить из Bash, является ли текущий терминал консольным виртуальным терминалом (например tty1), чтобы я мог подключить vlockлинию .bash_profileи запустить ее только при входе через tty1?

4
Переименуйте файлы в локальной папке, добавив префикс или суффикс
У меня есть много файлов в папке, и я хочу добавить к ним префикс или суффикс (не оба ). Я проверил здесь и узнал, что я могу использовать for filename in *.jpg; do mv "$filename" "prefix_$filename"; done; добавить префикс ко всем файлам, оканчивающимся на .jpg(и если я удалю .jpg, он …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.