Источник не является исполняемым ( источник - это встроенная команда оболочки bash, которая выполняет содержимое файла, переданного в качестве аргумента )
Вы должны запустить исходный код следующим образом:
docker run --rm -ti _image_name_ bash -c 'source FILE'
Если да:
alias foo="...'{print $5 $1 $2 $3 }'"
Позиционные параметры будут расширены при установке псевдонима. В конце концов, они находятся внутри строки в двойных -кавычках. Вы этого не хотите, поэтому вам пришлось экранировать их с помощью обратной косой черты. В качестве альтернативы вы могли бы поместить весь текст псевдонима в одинарные -кавычки, но поскольку вы хотите использовать одинарные кавычки в псевдониме, это становится довольно сложно.
Тем не менее, \n
должно быть хорошо в двойных кавычках.
В любом случае вам, вероятно, следует использовать вместо этого функцию. Таким образом, вам не нужно думать о дополнительном уровне цитирования команд.
mycommand() {
find./ -type f -name filename.ext -exec grep 'information' {} + |
sort |
awk -v OFS='\n' '{print $5, $1, $2, $3 }'
}