История изменений
Исправление slovazap, (текущая версия) :
Насколько я понимаю, текст файла компилируется
Исполняемые файлы бывают разные. В бинарниках содержится машинный код напрямую исполняемый процессором и они просто маппятся в память. Это не значит что файл считан в неё полностью - страницы подгружаются по мере надобности, а при нехватки памяти могут и выкидываться из оперативки. По этой причине он и блокируется для записи, т.к. изменение скорее всего нарушит консистентность и приведёт к падению программы. Скрипты же можно исполнять разными способами. Кто-то читает текст в память и компилирует в байткод (тогда ./myfile>>myfile вполне себе можно сделать), кто-то также маппит (причём тут уже от записи не защититься и ./myfile>>myfile опять же можно сделать, но если просто изменить скрипт он как правило упадёт). Питон вон вообще байткод кладёт рядом в отдельный файл, который скорее всего маппит, но при изменении исходника наверняка переписывает полностью, поэтому таких проблем не иммеет (но это предположение, не пользуюсь питоном).
Исходная версия slovazap, :
Насколько я понимаю, текст файла компилируется
Исполняемые файлы бывают разные. В бинарниках содержится машинный код напрямую исполняемый процессором и они просто маппятся в память. Это не значит что файл считан в неё полностью - страницы подгружаются по мере надобности, а при нехватки памяти могут и выкидываться из оперативки. По этой причине он и блокируется для записи, т.к. изменение скорее всего нарушит консистентность и приведёт к падению программы. Скрипты же можно исполнять разными способами. Кто-то читает текст в память и компилирует в байткод (тогда ./myfile>>myfile вполне себе можно сделать), кто-то также маппит (причём тут уже от записи не защититься и ./myfile>>myfile опять же можно сделать, но если просто изменить скрипт он как правило упадёт). Питон вон вообще байткод кладёт рядом в отдельный файл, который скорее всего маппит, но при изменении исходника наверняка переписывает полностью, поэтому таких проблем не иммет (но это предположение, не пользуюсь питоном).