Zaczynam w pustym katalogu.
$ touch aFile
$ ls
aFile
Następnie mam ls
dwa argumenty, z których jeden nie znajduje się w tym katalogu. Przekierowuję oba strumienie wyjściowe do pliku o nazwie output
. Używam >>
, aby uniknąć pisania jednocześnie.
$ ls aFile not_exist >>output 2>>output
$ cat output
ls: cannot access 'not_exist': No such file or directory
aFile
Co wydaje się działać. Czy są jakieś niebezpieczeństwa związane z tym podejściem?
ls aFile not_exist &>>output
tutaj bardziej standardowego ? (Uwaga,
&>>
NIE jest standardem. Jest to DEPRECATED, niejednoznaczna składnia, która działa inaczej w różnych powłokach. Zastanawiam się, skąd macie swoje rzeczy.
ls &>>foo ...
powinny być analizowane jako dwa comands ls &
i >>foo ...
, a to jest droga inne muszle jakby /bin/sh
od Ubuntu są analizowania go. Ponieważ jest przestarzałe, możesz zajrzeć tutaj - chociaż nie udaję, że to jakikolwiek autorytet. Możesz jednak zapytać bash
opiekunów, czy uważają to za dobry pomysł.