Типы клавиатуры Двойные символы, подключенные к KVM

a) Вывод команды 1 может быть задан с помощью

output=$(diff "helloworld$x.out" "output/helloworld$x.out") 

или с обратными окнами, но это не рекомендуется, потому что вы не можете их вложить, и их может быть трудно отличить от апострофов, в зависимости от шрифта:

 output=`cmd1`

b) Вместо того, чтобы записывать в файл, а затем читать этот файл (или захватывать вывод, а затем эхом его), вы должны использовать прямой канал:

 cmd1 > file
 cat file | cmd2 

 output=$(cmd1)
 echo "${output}" | cmd2 

=>

 cmd1 | cmd2 

, но в вашем примере вы не заинтересованы в выходе, но результат программы - это сработало?

 diff "helloworld$x.out" "output/helloworld$x.out" && echo "success" || echo "failure" 

Чтобы прочитать об использовании & amp; & amp; и || найдите «ярлык AND и ярлык OR».

Чтобы сохранить вывод чистым, вы можете перенаправить вывод «diff» в никуда:

 diff "helloworld$x.out" "output/helloworld$x.out" >/dev/null && echo "success" || echo "failure" 

Чтобы получить успех и оценить это позже, вы сохраняете результат последней команды в переменной с $ ?:

diff "helloworld$x.out" "output/helloworld$x.out" >/dev/null
result=$?
# do something else
case $result in 
   0) echo success ;;
   *) echo failure ;;
esac
0
задан 2 October 2017 в 20:59

0 ответов

Другие вопросы по тегам:

Похожие вопросы: