Попробуйте использовать fgrep
(или параметр -F
для grep
, который делает то же самое), и напишите свой запрос, не экранируя «<»
и » > "
. Я бы также предложил использовать одинарные кавычки '
вместо двойных кавычек "
, поскольку оболочка может расширять то, что она считает переменными и т. Д., Когда вы используете двойные кавычки.
fgrep -i 'template
Вы можете передавать свои загрузочные файлы через файл uEnv.txt, помимо ваших файлов на SD-карте.
эти файлы нужны для загрузки:BOOT.bin
(загружает fsbl и uboot ),bitstream.bit
(ваш битовый поток, который загружает в PL,uImage
(скомпилированное ядро linux ),devicetree.dtb
(адрес драйверов, которые linux читает ),uramdisk.image.gz
(файлы linux после загрузки ).
вы можете загрузить их в DDR с помощью этой команды:
bootargs=console=ttyPS0,115200 root=/dev/ram rw earlyprintk
load_image=fatload mmc 0 ${kernel_load_address} ${kernel_image} &&
fatload mmc 0 ${devicetree_load_address} ${devicetree_image} &&
fatload mmc 0 ${ramdisk_load_address} ${ramdisk_image} uenvcmd=run mmc_loadbit_fat &&
echo Copying Linux from SD to RAM... &&
run load_image &&
bootm ${kernel_load_address} ${ramdisk_load_address} ${devicetree_load_address}
также, если вы хотите загрузить другие файлы Linux из раздела ext4 SD, вы можете использовать эти команды наuEnv.txt
:
bootargs=console=ttyPS0,115200 root=/dev/mmcblk0p2 rw earlyprintk rootfstype=ext4 rootwait devtmpfs.mount=0
load_image=fatload mmc 0 ${kernel_load_address} ${kernel_image} &&
fatload mmc 0 ${devicetree_load_address} ${devicetree_image} uenvcmd=run mmc_loadbit_fat &&
echo Copying Linux from SD to RAM... &&
mmcinfo && run load_image &&
bootm ${kernel_load_address} - ${devicetree_load_address}