Articles of Шаблоны

Строка, сравниваемая с подстановочными знаками

Я пытаюсь проверить первую и последнюю строку файла, чтобы увидеть, содержит ли он определенную строку. Файл будет соответствовать формату HEADER 2016-11-7 … TOTAL IS: 20938 Я пытаюсь проверить, будет ли первая строка содержать строку HEADER затем удалить ее. У меня есть: #get first line of file header=`head -n +1 rubbish.txt` echo $header #If first line […]

scp с sshpass – удаленный каталог и файл с подстановочными знаками

У меня есть список с 950 виртуальными машинами MongoDB Я хочу собрать все mongodb.log. Путь к файлу журнала зависит от имени базы данных. for i in $(cat /tmp/mongonodes.txt) ; do sshpass -p34dDgdWger@rg4fll434ef scp root@$i:/data/*replicaset/*replicaset*/mongodb.log /tmp/$i-mongodb.log; done Указанная команда не работает. Я не могу добавить цитату root@$i:/data/*replicaset/*replicaset*/mongodb.log из-за переменной hostname. Клавиши SSH не являются опцией.

Bash – получить строку, содержащую пробелы в цикле

Я пытаюсь написать сценарий bash, который работает с каждым каталогом в подмножестве. К сожалению, путь содержит пробелы, и я не могу изменить имя. Цикл for настаивает на нарушении в каждом пространстве; Я пробовал десятки вариантов, но не смог придумать решение. Ниже приведена упрощенная версия. #!/bin/bash SOURCE="/Volumes/Time Machine Backups/Backups.backupdb/Zaphod" for file in `ls -d "$SOURCE"/201*` do […]

удалять файлы с определенным шаблоном в своих именах

Я хочу удалить все файлы, которые имеют два числа, и точку в начале их имен например: 01. abc 02. xyz

Каков эквивалент bash команды cmdlet?

Командлет, который я часто использую в PS, очень удобен. Если я хочу получить все файлы с именем, начинающимся с «test», я бы сделал следующее: ls | ?{$_.name -like 'test*'} Что такое равноценный способ, который nix admin сделал бы это в bash? Очевидно, что Bash – это текст, а не объект, поэтому команда, вероятно, будет выглядеть […]

Ввод каталогов, где имена совпадают в подстроке

Я хочу ввести несколько каталогов в цикле for. У меня нет полного имени каталогов, только часть его. Я хотел бы сделать что-то вроде того, что вы напишете на терминале, например, cd *IncompleteDirName* Это MVE цикла: IncompleteDirName получены из файла IncompleteDirNames . cont=1 sum=1 while read anotherFILE; do IncompleteDirName=$(sed "${cont}q;d" IncompleteDirNames) cd *"${IncompleteDirName}"* # Do stuff […]

Вставка переменной Bash – Perl Script

У меня возникли проблемы с попыткой вставить переменную bash внутри моего кода perl. Целью кода является выполнение определенной команды печати perl в терминале с использованием файла сценария bash. Я упростил свою проблему для кода ниже: i=5 myvar=$(perl -e 'print "AAA" x ($i)') echo "$myvar" Имея переменную i с 5 в качестве ее значения, я хочу […]

Расширение Wash с Bash с помощью командной строки

Я использую команду, которая принимает ввод формы command [-a input_files]* Поэтому я могу вызвать command -a foo или command -a foo -a bar -a baz . Теперь я пытаюсь автоматизировать рабочий процесс и хочу передать все файлы в каталог в команду. Есть ли способ получить шаблон для этого? Я знаю о * но это не […]

Скопируйте файлы, исключая x, y, z, вызывая ошибку в сценарии оболочки

Я не очень разбираюсь в сценариях оболочки, но я думаю, что это было бы очень легко исправить, но это ускользало от меня. Мне нужно скопировать содержимое каталога, за исключением нескольких файлов. У меня есть команда, которая работает, когда я ввожу ее в терминал, но когда ее запуск в сценарии оболочки завершается с синтаксической ошибкой или […]

Цитирование через unix-даты

У меня довольно простая задача, но она не смогла найти правильное решение. Я хочу итератировать интервал дат с 2008 года для текущих и требуемых значений эпох для каждой итерации цикла. Я заинтересован в итерации как лет, так и половин и месяцев. Я написал такой скрипт #!/bin/bash initial_date=`date -d "2008-02-04 00:00:00 UTC" +%s` end_date=`date +%s` n=0 […]