1. Сначала :используйте #!/bin/bash
вместо#!/BIN/BASH
С помощью #!/BIN/BASH
, если вы запускаете такой скрипт:
bash script.sh
..все работает нормально.
Но если выполнить:
./script.sh
..вы получаете ошибку:
-bash:./script.sh: /BIN/BASH: bad interpreter: No such file or directory
2. Выполните эту команду:
echo 'PATH='$PATH
добавить вывод в начало скрипта.
Пример:
# echo 'PATH='$PATH
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Если ваш файл разделен пробелом -, используйтеawk
:
awk '
NR==FNR{s[$0]=1}
NR!=FNR{for (v in s){ if ($2 ~ v) { print; next; }}}
' file1 file2
$0
)файла1 как ключ в массиве s
. $2
соответствует любому ключу из s
, и если да, напечатайте строку. next
после совпадения, чтобы предотвратить дублирование одной и той же строки.