Telegram Group & Telegram Channel
💡 Задача Linux: Пропажа файла после echo

У вас есть файл /tmp/testfile с важным содержимым. Вы решили добавить в него строку "Hello, world!" с помощью команды:


echo "Hello, world!" > /tmp/testfile

Однако после выполнения этой команды вы замечаете, что всё старое содержимое исчезло и осталась только одна строка "Hello, world!".

Вопрос:
Почему это произошло? Как правильно было добавить строку, не потеряв содержимое?

Решение и объяснение:
🔍 Что делает >?
Символ > в Bash — это перезапись (truncate) файла. Когда вы пишете:

```bash
echo "Hello, world!" > /tmp/testfile```
Это значит:

Shell открывает файл на запись с обнулением (truncate).

Весь предыдущий контент удаляется, прежде чем echo записывает новую строку.

Вот подвох: даже если echo кажется безобидной командой, сам процесс перенаправления (>) выполняется до запуска echo.

Как сделать правильно?
Чтобы добавить строку, нужно использовать >>, а не >:

```bash
echo "Hello, world!" >> /tmp/testfile
```
>> открывает файл в режиме append, не трогая текущее содержимое.

⚠️ Бонусный подвох (для профи)
Выполните это:

```bash
cat /tmp/testfile > /tmp/testfile
```
После этого файл станет пустым. Почему?

➡️ Ответ: cat читает из /tmp/testfile, но перенаправление > делает truncate сразу, еще до запуска cat. То есть:

Файл обнуляется,

Потом cat читает его… но он уже пустой!

Чтобы избежать такого поведения, можно использовать временный файл:

```bash
cat /tmp/testfile > /tmp/tmpfile && mv /tmp/tmpfile /tmp/testfile```



tg-me.com/rust_code/927
Create:
Last Update:

💡 Задача Linux: Пропажа файла после echo

У вас есть файл /tmp/testfile с важным содержимым. Вы решили добавить в него строку "Hello, world!" с помощью команды:


echo "Hello, world!" > /tmp/testfile

Однако после выполнения этой команды вы замечаете, что всё старое содержимое исчезло и осталась только одна строка "Hello, world!".

Вопрос:
Почему это произошло? Как правильно было добавить строку, не потеряв содержимое?

Решение и объяснение:
🔍 Что делает >?
Символ > в Bash — это перезапись (truncate) файла. Когда вы пишете:

```bash
echo "Hello, world!" > /tmp/testfile```
Это значит:

Shell открывает файл на запись с обнулением (truncate).

Весь предыдущий контент удаляется, прежде чем echo записывает новую строку.

Вот подвох: даже если echo кажется безобидной командой, сам процесс перенаправления (>) выполняется до запуска echo.

Как сделать правильно?
Чтобы добавить строку, нужно использовать >>, а не >:

```bash
echo "Hello, world!" >> /tmp/testfile
```
>> открывает файл в режиме append, не трогая текущее содержимое.

⚠️ Бонусный подвох (для профи)
Выполните это:

```bash
cat /tmp/testfile > /tmp/testfile
```
После этого файл станет пустым. Почему?

➡️ Ответ: cat читает из /tmp/testfile, но перенаправление > делает truncate сразу, еще до запуска cat. То есть:

Файл обнуляется,

Потом cat читает его… но он уже пустой!

Чтобы избежать такого поведения, можно использовать временный файл:

```bash
cat /tmp/testfile > /tmp/tmpfile && mv /tmp/tmpfile /tmp/testfile```

BY Rust


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/rust_code/927

View MORE
Open in Telegram


Rust Telegram | DID YOU KNOW?

Date: |

Telegram auto-delete message, expiring invites, and more

elegram is updating its messaging app with options for auto-deleting messages, expiring invite links, and new unlimited groups, the company shared in a blog post. Much like Signal, Telegram received a burst of new users in the confusion over WhatsApp’s privacy policy and now the company is adopting features that were already part of its competitors’ apps, features which offer more security and privacy. Auto-deleting messages were already possible in Telegram’s encrypted Secret Chats, but this new update for iOS and Android adds the option to make messages disappear in any kind of chat. Auto-delete can be enabled inside of chats, and set to delete either 24 hours or seven days after messages are sent. Auto-delete won’t remove every message though; if a message was sent before the feature was turned on, it’ll stick around. Telegram’s competitors have had similar features: WhatsApp introduced a feature in 2020 and Signal has had disappearing messages since at least 2016.

Tata Power whose core business is to generate, transmit and distribute electricity has made no money to investors in the last one decade. That is a big blunder considering it is one of the largest power generation companies in the country. One of the reasons is the company's huge debt levels which stood at ₹43,559 crore at the end of March 2021 compared to the company’s market capitalisation of ₹44,447 crore.

Rust from vn


Telegram Rust
FROM USA