Estou tentando tornar meu arquivo .sh capaz de aceitar três maneiras diferentes de obter um caminho para um arquivo plotado pelo usuário.
Se nenhum caminho de arquivo / env (como eu configuro isso corretamente?) é dado como arg na linha de comando, eu quero que o programa leia de stdin quando chamado "./example.sh" no shell.
Eu tenho meus programas em C prontos para manipular a entrada, mas não sei como "sintaxe" a situação dada no script bash.
Aqui está o que eu tenho em mente, a primeira linha é verificar se o arg é um arquivo, e define a entrada para arg se dado, se não estou tentando fazer input = minne, que é um arquivo de programa no mesmo dir:
#!/bin/bash
echo "Submitting path to program file..":
echo "Enter path if you see no result from execution: ":
[ $# -ge 1 -a -f "$1" ] && input="$1" || input="./minne"
if[nofile as argument]
#use a default path to file in same dir called minne to load
fi[nofilev2 as argument]
#path from stdin, looped so that user gets same question again
fi[$var as argument]
#extract the path from the variable and pass it to the c program
fi[filepath as argument]
#load given input path
./makefile < minne: echo$?
Como uso corretamente meu makefile?
Tags command-line bash linux shell path