и посмотреть медиа
Código en una sirena - Codificación Python
и посмотреть медиа
Canal sobre programación en Python y otros idiomas. Explicaciones y códigos simples.
Canal sobre programación en Python y otros idiomas. Explicaciones y códigos simples.
bot de IA para clonar texto a voz y voz en Telegram. Cree audio utilizando la red neuronal de forma rápida y fácil.
Recurso para aquellos interesados en la programación. Enfóquese en Python, pero también cubre otros temas.
Знаете ли вы, как потерять файл во время сортировки? Бывает, файл нужно отсортировать и оставить под тем же именем – строчка sort list.txt > list.txt выглядит как решение задачи. Но после нее в файле оказывается ноль строк, а прежнее содержимое взять негде. Причина в порядке действий: перенаправление отрабатывает раньше команды. Шелл открывает файл справа от > на запись, обрезает до нуля, и только потом стартует sort – читать ему уже нечего. printf "banana\napple\ncherry\n" > fruits.txt sort fruits.txt > fruits.txt wc -l < fruits.txt # 0 Никакой ошибки при этом нет: sort штатно отработал на пустом входе и штатно записал пустой результат. Файл существует, права на месте, код возврата 0 – пропали только данные. Обнуляет файл сам шелл, командой это не управляется: printf "INFO start\nDEBUG x=1\nINFO done\n" > app.log false > app.log wc -l < app.log # 0 false не читает и не пишет ничего, он просто завершается с ненулевым кодом – но лог уже пустой. То же самое произойдет с grep -v DEBUG app.log > app.log: попытка выкинуть отладочные строки из лога выкинет лог целиком. Правильный порядок – сначала полный результат, потом замена файла: printf "banana\napple\ncherry\n" > fruits.txt sort fruits.txt > tmp.txt && mv tmp.txt fruits.txt cat fruits.txt # apple # banana # cherry Временный файл разводит чтение и запись во времени, а && гарантирует, что подмена произойдет только при успешном завершении команды. У sort для этого есть и собственный ключ – sort -o fruits.txt fruits.txt. Он, как и sponge из moreutils, сначала читает вход целиком и только потом открывает выходной файл. Файл в правой части перенаправления обрезается до запуска команды, поэтому один и тот же файл не может быть входом и выходом одновременно. Результат сначала пишется рядом – во временный файл или через ключ вроде -o, – и только потом занимает место исходного. Код на салфетке × Кусочки кода
Открыть канал и посмотреть медиаSolo los usuarios registrados pueden compartir su opinión.
¡Sé el primero en compartir tu experiencia con este recurso!