Вы не должны были делать mkdir .config
; вам нужно было просто скопировать существующий файл конфигурации в имя файла с именем .config
в исходном каталоге ядра.
например.
cd linux-yocto-3.14
cp /path/to/config-3.14.26-yocto-qemu .config
make -j4 all
Ваша попытка близка к фактическому решению. Соответствующий флаг можно найти в справке read
:
$ help read
...
-d delim continue until the first character of DELIM is read, rather
than newline
Это не упоминается явно, но вы можете установить разделитель пустым, и, таким образом, он будет читаться до EOF.
$ IFS=, read -d '' -a myarray < myfile
$ echo ${myarray[2]}
U2FsdGVkX1/c8rTTO41zVT7gB+KL+n7KoNCgM3vfchOyuvBngdXDGjXTvXTK0jz6
Используйте -d ''
для чтения всего файла вместо одной строки.
-d delim continue until the first character of DELIM is read, rather
than newline
$ cat file.txt
abcd
efgh
$ IFS=$'\n' read -a ARR < file.txt
$ echo ${#ARR[@]}
1 # only 1 element
$ IFS=$'\n' read -a ARR -d '' < file.txt
$ echo ${#ARR[@]}
2 # whole file
И еще:
Убедитесь, что в вашем скрипте нет set -e
, если вы используете -d ''
, так как read --help
говорит (в конце ):
Exit Status:
The return code is zero, **unless end-of-file is encountered**...
$ IFS=$'\n' read -a ARR < file.txt
$ echo $?
0
$ IFS=$'\n' read -a ARR -d '' < file.txt
$ echo $?
1 # Your script will exit if you `set -e`