&> 테스트 또는 > test2>&1

&> 테스트 또는 > test2>&1

&>오류 및 데이터 처리 지침을 읽었습니다.

$ls -al test test2 test3 badtest &> test7
$ cat test7
ls: cannot access 'test': No such file or directory
ls: cannot access 'badtest': No such file or directory
-rw-r--r-- 1 me staff 78 Oct 28 19:07 test2
-rw-r--r-- 1 me staff  0 Oct 28 19:03 test3

그럼에도 불구하고 확인해보니더 이상 사용되지 않고 더 이상 사용되지 않는 구문 [Bash Hackers Wiki]

그것은 추천한다2>&1

$ ls -al test test2 test3 badtest > test7 2>&1

 $ cat test7
ls: cannot access 'test': No such file or directory
ls: cannot access 'badtest': No such file or directory
-rw-r--r-- 1 me staff 78 Oct 28 19:07 test2
-rw-r--r-- 1 me staff  0 Oct 28 19:03 test3

어떤 패턴을 따라야 합니까?

답변1

그것은 당신에게 달려 있습니다.

쉘은 과 bash를 동일하게 이해하며 전자 구문을 후자 작성을 위한 지름길로 사용할 수 있습니다. 다른 쉘에서는 구문 오류나 오류가 발생할 수 있습니다.&>file>file 2>&1&>

만약 너라면오직bash(예를 들어 스크립트 대신) 스크립트를 작성하려면 /bin/sh반드시 를 사용하세요 &>. 하지만 작성하고 싶거나 필요하다면가지고 다닐 수 있는스크립트( 유사한 셸에서 실행해야 하거나 다른 셸에서 실행할 수 있는 스크립트 ) /bin/sh는 피해야 할 것 중 하나 입니다 .shbashkshzshdash&>

모든 sh유사한 쉘 구현POSIX 표준구문 및 구문 측면에서 볼 때 bash다른 쉘도 배열 및 정규식 일치와 같은 확장과 같은 구문상의 편의성을 제공하며 일부 쉘은 &>구현 방법과 완전히 다른 방식으로 POSIX 표준을 확장할 수 있습니다.bash

관련된:

관련 정보