Я уверен, выполнение файла оболочки, как это в терминале:передавая параметр командной строки для .Sh (оболочки) файл
./cherrypicker.sh input.txt
input.txt содержит входной текст.
Моя цель состоит в том, чтобы передать input text
непосредственно в качестве аргумента командной строки из веб-интерфейса
Я проверил cherrypicker.sh файл, чтобы получить некоторые подсказки. он имеет
tools/pos/pos.sh tools/pos $1 > $1.pos 2> /dev/null
Если $1
был бы текст из input.txt
тогда я мог бы перевалов текст непосредственно. Но когда я делаю echo $1
, он дает input.txt
.
Я не мог понять, что >
указывает здесь, а также 2
и /dev/null
Любое объяснений будет очень заметным. Я проверил около .sh файл, но статьи говорит, что файл оболочки equavalent в .bat-файл
Cherrypicker.sh
#!/bin/bash
echo "running stanford pos tagger..."
tools/pos/pos.sh tools/pos $1 > $1.pos 2> /dev/null
echo $1.pos
echo "running stanford ner tagger..."
tools/ner/ner.sh tools/ner $1 > $1.ner 2> /dev/null
echo "running charniak parsing..."
java MakeCharniakInput $1
tools/charniak-parser/PARSE/parseIt -l300 tools/charniak-parser/DATA/EN/ $1.charniakIN > $1.charniak
echo "running minipar parsing..."
tools/minipar/pdemo/pdemo -p tools/minipar/data/ < $1 > $1.minipar
echo "detecting mentions..."
java MentionDetection $1
tools/crf++/crf_test -m modelmd $1.crf > $1.pred
java CreateNPSpan $1 $1.pred
# if [[ $1 = "mp" ]]
# then
# echo "creating feature file...."
# java -cp .:edu.mit.jwi.jar CherryPick mp raw.txt
# echo "classifying clusters using $1 model....."
# tools/svmmentionpair/svm_classify raw.txt.mpsvm modelmp raw.txt.mppred
# java MakeCluster raw.txt raw.txt.mppred
# elif [[ ($1 = "mr") || ($1 = "cr") ]]
# then
echo "creating feature file...."
java -cp .:edu.mit.jwi.jar CherryPick cr $1
echo "classifying clusters using cr joint model....."
tools/svmrank/svm_classify $1 modelrank > $1.entities
# else
# echo "cannot classify clusters using *mysterious* model....."
# fi
echo "creating output....."
java MakeResponse $1
'cherrypicker.sh' ожидает ввода имени файла, а не текста. Поскольку различные программы, используемые в этом скрипте, также ожидают имя файла и не могут быть предоставлены какой-либо текст напрямую (в частности, «java»), вам сначала нужно создать файл, содержащий ваш текст, а затем передать его скрипту. –