Моя проблема заключается в следующем: у меня есть скрипт bash:
#!/bin/bash
IFSBAK=$IFS
if [ "$TXTEXT" = "" ];
then
CMD="find . -iname \"*.txt\" -or -iname \"*.text\""
else
CMDTEMP="find . "
IFS=":"
for i in $TXTEXT
do
CMDTEMP="${CMDTEMP} -iname \"*.${i}\" -or"
done
IFS=$IFSBAK
CMD=${CMDTEMP%-or}
fi
FILES=$(eval $CMD)
OUTPUT=$1
for f in $FILES
do
VAR=$(grep -ae [a-zA-Z0-9] "$f" | tr -cs "[:alnum:]" "\n")
IFS=$' \n\t-?=!*][.\",();\'\`\´:'
for v in $VAR
do
echo $v >> "${OUTPUT}"
done
IFS=$' \n\t'
done
и мне нужно вставить этот код в программу на Си. Я пытался переписать весь сценарий в одну строку, тестируя его непосредственно с оболочкой, и он работает, но у меня возникают проблемы с кавычками и я не могу использовать его в качестве параметра вызова system ().
Можете ли вы предложить мне выход?
Спасибо за вашу помощь