# Find all executable files
for file in $(find "${buildroot}" -type f -perm /111 | sort); do
- local first_line="$(grep -q "^#!" "${file}" && head -n1 "${file}")"
+ local shebang="$(head -c2 "${file}")"
# Skip files that are not scripts
- if [ "${first_line:0:2}" != "#!" ]; then
+ if [ "${shebang:0:2}" != "#!" ]; then
continue
fi
- local interpreter="${first_line:2}"
+ local interpreter="$(head -n1 "${file}")"
+ interpreter="${interpreter:2}"
case "${interpreter}" in
# Interpreters in /usr/local are illegal