Bash에서 이중 대괄호로 명령을 실행하는 데 작동하지 않습니다.

user2959896

일관성을 유지하기 위해 모든 if 문에서 이중 대괄호 [[]]를 사용하려고했습니다. 그러나 실행하려는 명령의 반환 값을 확인하려고 할 때 문제가 발생했습니다. if 문을 만드는 여러 방법을 테스트 한 후 대괄호없이 만 명령을 실행할 수 있음을 발견했습니다.

다음은 작동하지 않습니다.

if [[ $command ]] ; then
    echo "something"
fi

if [[ $(command) ]] ; then
    echo "something"
fi

if [[ ${command} ]] ; then
    echo "something"
fi

위의 코드는 명령이 실행되지 않은 경우에도 if 루프를 참으로 만듭니다. 위의 코드는 중괄호와 함께 작동하지 않기 때문에 이것을 사용하는 것은 작동하지 않습니다.

[[ $command ]] || echo "failed"

그리고 그것은 서브 쉘에서도 작동하지 않습니다.

다음 작업 :

if $command ; then
    echo "something"
fi

if $(command) ; then
    echo "something"
fi

대괄호가있는 if 루프에 명령을 배치하는 것이 작동하지 않는 이유는 무엇이며 위의 if 루프가 명령을 실행하지 않았는데도 true를보고하는 이유는 무엇입니까? bash 버전 4.1.9를 사용하고 있습니다. 필자는 이것을 여러 번 시도했으며 if 루프는 위에서 입력 한 것만 큼 간단합니다. 명령이 성공적으로 실행되었는지 확인하고 실행되지 않으면 종료됩니다.

devnull

짧은 대답은 다음과 같습니다.

  • [그리고 표현을[[ 기대하십시오 .

  • if기대 명령을 .

속담:

[[ $(command) ]]

본질적으로 실행됩니다.

[[ -n <command_output> ]]

당신이 원하는 것일 수도 있고 아닐 수도 있습니다. 반면에 다음과 같이 말합니다.

$command && echo something || echo other

에코 something또는 other명령의 리턴 코드를 기반으로합니다 ( 0각각 0이 아닌 값).

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

백그라운드에서 실행중인 명령이 예상대로 작동하지 않습니다.

분류에서Dev

bash 중괄호 확장이 명령에 대해 작동하지 않는 이유는 무엇입니까?

분류에서Dev

bash 중괄호 확장이 명령에 대해 작동하지 않는 이유는 무엇입니까?

분류에서Dev

명령에 대한 이벤트 동작이 명령을 실행하지 않음

분류에서Dev

와일드 카드로 git 명령을 실행하면 bash에서는 작동하지만 Process에서는 작동하지 않습니다.

분류에서Dev

sendmail에 대한 실행 명령이 작동하지 않습니다.

분류에서Dev

nullglob이있는 대괄호를 포함하여 bash 변수 내에서 명령을 실행할 수 없습니다.

분류에서Dev

inotifywait 내에서 실행되는 chmod 명령이 작동하지 않습니다.

분류에서Dev

중첩 된 bash 명령이 teamcity ssh exec에서 작동하지 않습니다.

분류에서Dev

일괄 스크립트에서 여러 PowerShell 명령을 실행하려고하는데 "%"기호가 전송되지 않습니다.

분류에서Dev

중단 점을 사용할 때 Jsoup get이 제대로 작동하지만 정상적인 실행에서는 작동하지 않습니다.

분류에서Dev

SQL Azure에서 호환성 수준을 변경하는 방법, 내 명령이 작동하지 않습니다.

분류에서Dev

C #에서 매개 변수 명령으로 업데이트가 작동하지 않습니다.

분류에서Dev

AWK 명령이 AIX에서 예상대로 작동하지 않습니다.

분류에서Dev

Java에서 RCP 명령이 제대로 작동하지 않습니다.

분류에서Dev

"관리자 권한으로 실행"에 대한 Ctrl + Shift + Enter는 "데스크톱 앱"프로그램에서는 작동하지만 "명령 실행"프로그램에서는 작동하지 않습니다.

분류에서Dev

여러 응용 프로그램을 실행하는 동안 Yii2에서 사용자 지정 콘솔 명령이 작동하도록하는 데 문제가 있습니다.

분류에서Dev

Bash 리디렉션이 SQLite 명령에 대해 작동하지 않습니다.

분류에서Dev

bash의 명령이 절대 경로로 작동하지 않습니다.

분류에서Dev

Maven 명령에 대해 "무엇이든 실행"작업이 작동하지 않습니다.

분류에서Dev

명령 대체가 중괄호로 작동하지 않지만 실제 숫자로 대체되는 이유는 무엇입니까?

분류에서Dev

특정 메시지에 자동으로 응답하는 명령을 만들었습니다. 명령이 작동하지만 다른 모든 명령이 작동하지 않습니다 (discord.py 다시 작성)

분류에서Dev

SQL을 사용하는 Cosmos DB 쿼리는 데이터 탐색기에서 실행할 때 작동하지만 C # DocumentClient로 실행할 때는 작동하지 않습니다.

분류에서Dev

for 루프에서 awk 명령을 사용하는 Bash case 문이 작동하지 않습니다.

분류에서Dev

/ etc / sudoers에 www-data를 추가하면 PHP shell_exec ()에서 명령을 실행하는 데 작동하지 않습니다.

분류에서Dev

bash는 명령을 순차적으로 실행하지 않습니다.

분류에서Dev

.sh 명령이 데스크탑 실행기에서 작동하지 않음

분류에서Dev

준비된 명령문 executeUpdate가 업데이트 명령문에서 작동하지 않습니다.

분류에서Dev

bash에서 현재 실행중인 명령 후에 명령을 실행하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    백그라운드에서 실행중인 명령이 예상대로 작동하지 않습니다.

  2. 2

    bash 중괄호 확장이 명령에 대해 작동하지 않는 이유는 무엇입니까?

  3. 3

    bash 중괄호 확장이 명령에 대해 작동하지 않는 이유는 무엇입니까?

  4. 4

    명령에 대한 이벤트 동작이 명령을 실행하지 않음

  5. 5

    와일드 카드로 git 명령을 실행하면 bash에서는 작동하지만 Process에서는 작동하지 않습니다.

  6. 6

    sendmail에 대한 실행 명령이 작동하지 않습니다.

  7. 7

    nullglob이있는 대괄호를 포함하여 bash 변수 내에서 명령을 실행할 수 없습니다.

  8. 8

    inotifywait 내에서 실행되는 chmod 명령이 작동하지 않습니다.

  9. 9

    중첩 된 bash 명령이 teamcity ssh exec에서 작동하지 않습니다.

  10. 10

    일괄 스크립트에서 여러 PowerShell 명령을 실행하려고하는데 "%"기호가 전송되지 않습니다.

  11. 11

    중단 점을 사용할 때 Jsoup get이 제대로 작동하지만 정상적인 실행에서는 작동하지 않습니다.

  12. 12

    SQL Azure에서 호환성 수준을 변경하는 방법, 내 명령이 작동하지 않습니다.

  13. 13

    C #에서 매개 변수 명령으로 업데이트가 작동하지 않습니다.

  14. 14

    AWK 명령이 AIX에서 예상대로 작동하지 않습니다.

  15. 15

    Java에서 RCP 명령이 제대로 작동하지 않습니다.

  16. 16

    "관리자 권한으로 실행"에 대한 Ctrl + Shift + Enter는 "데스크톱 앱"프로그램에서는 작동하지만 "명령 실행"프로그램에서는 작동하지 않습니다.

  17. 17

    여러 응용 프로그램을 실행하는 동안 Yii2에서 사용자 지정 콘솔 명령이 작동하도록하는 데 문제가 있습니다.

  18. 18

    Bash 리디렉션이 SQLite 명령에 대해 작동하지 않습니다.

  19. 19

    bash의 명령이 절대 경로로 작동하지 않습니다.

  20. 20

    Maven 명령에 대해 "무엇이든 실행"작업이 작동하지 않습니다.

  21. 21

    명령 대체가 중괄호로 작동하지 않지만 실제 숫자로 대체되는 이유는 무엇입니까?

  22. 22

    특정 메시지에 자동으로 응답하는 명령을 만들었습니다. 명령이 작동하지만 다른 모든 명령이 작동하지 않습니다 (discord.py 다시 작성)

  23. 23

    SQL을 사용하는 Cosmos DB 쿼리는 데이터 탐색기에서 실행할 때 작동하지만 C # DocumentClient로 실행할 때는 작동하지 않습니다.

  24. 24

    for 루프에서 awk 명령을 사용하는 Bash case 문이 작동하지 않습니다.

  25. 25

    / etc / sudoers에 www-data를 추가하면 PHP shell_exec ()에서 명령을 실행하는 데 작동하지 않습니다.

  26. 26

    bash는 명령을 순차적으로 실행하지 않습니다.

  27. 27

    .sh 명령이 데스크탑 실행기에서 작동하지 않음

  28. 28

    준비된 명령문 executeUpdate가 업데이트 명령문에서 작동하지 않습니다.

  29. 29

    bash에서 현재 실행중인 명령 후에 명령을 실행하는 방법은 무엇입니까?

뜨겁다태그

보관