Это вопрос, который вы задаете здесь Shell script to execute nohup against an inputed filename.Скрипт оболочки для nohup каждого файла в каталоге
Я просто пытаюсь найти, чтобы изменить скрипт no_hup ниже для выполнения всего каталога SQL-скриптов, а не только одного файла. Поэтому я пытаюсь найти хороший способ изменить приведенный ниже сценарий для исключения всего каталога файлов:
Как написать сценарий оболочки, чтобы я мог работать с каталогом с тестом, который содержит файлы foo1.sql, foo2.sql, foo3.sql
./nohup_sh тест
, который будет производить Ouput
поЬир PSQL -d -f дб тестовый/foo1.sql> & тест/foo1. out &
поЬир PSQL -d -f дб тест/foo2.sql> & тест/foo2.out &
поЬир PSQL -d -f дб тест/foo3.sql> & тест/foo3.out &
Это код, который я использую из предыдущего ответа называется nohup_sh
#!/bin/bash
outputFile="$(echo $1 | cut -d\. -f 1).out"
nohup psql -d db -f "$1" >& "$outputFile" &
'$ {file%. *}' Is ** not ** то же, что и 'cut -d. -f 1'. Это то же самое, что и 'awk -v FS =. -v OFS =. 'NF -' '(то есть только последнее поле). Эквивалентное расширение параметра для этой команды cut: '$ {file %%. *}' –