Простой способ:
направьте ваш скрипт наcolumn -t
$ script.sh | column -t
a OK
aa OK
aaa OK
aaaa OK
aaaaaa OK
aaaaaaaaaaaaaaaaa OK
aaaaaaaaaaaaaaaaaaaaaaaaaa OK
PWD
является переменной оболочки и поэтому не будет расширяться внутри одинарных кавычек, используемых awk.
awk -v pwd="$PWD" '{print pwd$1}' dirs.txt
Это установит переменнуюpwd
awk
в значение переменной оболочки PWD
, а затем напечатает столбец 1 каждой строки в dirs.txt
с этим значением в начале.
Используя GNU awk, вы можете использовать опцию -i inplace
, чтобы перезаписать ваш файл выводом, в противном случае вам придется перенаправить его в новый файл и при желании перезаписать им старый файл.
Конечно, есть и другие способы сделать это, поэтому, поскольку вы запрашиваете любую команду, которая решает вашу проблему, другим способом может быть:
while read -r line; do echo "${PWD}${line}"; done < "dirs"