Содержимое файла удалено

Я использовал эту команду:

sort .file1 >.file2 | mv .file2 .file1 

Но тогда .file1 пуст.

Зачем? Если моя команда неверна, как я могу ее восстановить?

2 Solutions collect form web for “Содержимое файла удалено”

В этом случае нет смысла иметь конвейер, так как первая часть конвейера не создает вход для второй части, а вторая часть ничего не читает со стандартного ввода.

Вместо этого просто используйте

 $ sort -o .file1 .file1 

Это отсортирует файл .file1 «на месте».

Что произошло при .file2 вашего конвейера, так это то, что оболочка создала .file2 как пустой файл, а mv успел заменить .file1 этим перед sort чтобы сортировать содержимое .file1 . Все части конвейера запускаются одновременно.

Чтобы восстановить, восстановите из резервной копии.

Вы должны сделать sort .file1 > .file2 && mv .file2 .file1 . с | pipe вы просто передаете stdout sort в .file2 который был переименован в .file1 Какая файловая система у вас есть на этом /dev/sda1 , но .file1 виду, что восстановление невозможно

Linux и Unix - лучшая ОС в мире.