Два файла с одинаковыми именами в одном каталоге Unix

См. §3.2.2 Руководства BASH:https://www.gnu.org/software/bash/manual/bash.html

Поскольку каждый канал выполняется в отдельной подоболочке, обновление переменной count в команде канала выходит за рамки.

Однако вы можете настроить выполнение последнего канала в основной области, используя shopt -s lastpipeв начале вашего скрипта. Это приведет к обновлению переменной count в той же области, что и основная оболочка вашего скрипта, что позволит восстановить окончательное значение счетчика.

0
28.10.2020, 12:53
1 ответ

Причина, по которой два файла кажутся одинаковыми с ls -l, заключается в том, что в имени одного из них есть символ возврата (\010):, поэтому, когда ls -lвыводит свое имя, он выводит PP3, а затем — символ возврата. возвращает курсор над 3, затем 2, что приводит к PP2.

Вы можете увидеть это с помощью

printf PP3; sleep 2; printf '\0102'

Что касается , почему это происходит с SAP, я понятия не имею.

4
18.03.2021, 22:54

Теги

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