По сути, вам нужно содержимое filename
в качестве аргументов. Это можно легко сделать, если в ваших аргументах нет пробелов или операторов подстановки:
command \
-argument \
-argument \
$(cat ./file) \
-argument \
...
Если ваши аргументы не содержат символов новой строки или какого-либо другого символа, вы можете использовать этот символ в качестве разделителя и построить список аргументов:
#! /bin/bash
args=()
while IFS= read -r arg
do
args+=("$arg")
done < filename
command \
-argument \
-argument \
"${args[@]}" \
-argument \
...
Если, скажем, аргументы не содержат |
, тогда вы можете вместо этого сделать:
while IFS= read -d'|' -r arg
Где файл содержит:
-arg1 something|-arg2
something else|-arg3 ...
Para que funcione, agregue
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
en~/.bash_profile
Explicación:
Hay tres archivos principales que bash fuentes dependiendo de cómo se genera el shell.
~/.bash_profile
-obtenido en modo de inicio de sesión interactivo que es:
~/.profile
-procedente de inicio de sesión gráfico es decir:
~/.bashrc
-obtenido en no -modo interactivo de inicio de sesión es decir:
Dado que en su caso, se está conectando a través de ssh, es decir, el modo de inicio de sesión interactivo, por lo que el perfil ~/.bash _se generará automáticamente, por lo que puede obtener su.bashrc desde allí.