Другие опубликовали хорошую информацию; однако есть еще одна важная деталь: Ubuntu не имеет полезной утилиты восстановления NTFS. Файловые системы иногда повреждаются. Это может привести к сбоям питания, ошибкам, сбоям системы и другим условиям. Когда Ubuntu встретит поврежденный том NTFS, Ubuntu откажется его монтировать. Таким образом, в системе только с Ubuntu использование NTFS на внутреннем диске - это проблема, ожидающая появления. Как только этот том NTFS будет поврежден (и он будет), вам придется переместить диск на другой компьютер или использовать аварийный диск Windows для его восстановления. Любое действие - это хлопот и даже создает новые риски.
Таким образом, если вы намереваетесь иметь только систему Ubuntu, как вам кажется, я настоятельно рекомендую преобразовать этот раздел данных из NTFS в Linux -формативный формат. Вы можете сделать это, создав резервную копию, конвертируя, а затем восстанавливая данные; или путем создания Linux-родного хранилища, копирования данных, а затем преобразования NTFS в Linux-native для использования каким-то другим способом. (Вы также можете скопировать данные, а затем изменить размер файловой системы Linux, но это создает новые риски, поэтому я рекомендую это делать, если у вас хорошая резервная копия.) Лучший подход действительно зависит от того, сколько данных вы говорите , сколько неиспользованного дискового пространства у вас есть и сколько у вас резервных копий.
Я воспользуюсь этой возможностью, чтобы перейти на мыльницу и сказать, что если у вас нет хорошего резервные копии, вы должны их сделать, даже если это означает покупку внешнего хранилища для целей резервного копирования. Каждые несколько дней я вижу рассказ о горе от кого-то, у кого нет хороших резервных копий и кто потерял незаменимые данные в результате. Пожалуйста, не становитесь одним из тех людей! Если преобразование из NTFS в собственный формат Linux помогает убедить вас купить необходимое резервное оборудование, то это еще одно преимущество для преобразования.
who -b | sed 's/.* //' >> file.txt
работает для всех локалей, установленных в моей системе (см. тест ниже), в основном он удаляет все до последнего появления двух последующих символов пробела, которые должны совпадать с началом временной метки независимо от ваших настроек локали. [!d0 ]
$ for i in $(locale -a); do printf "%-10s: %s\n" $i "$(LANG=$i who -b | sed 's/.* //')"; done
C : Sep 23 20:22
C.UTF-8 : 2017-09-23 20:22
de_AT.utf8: 2017-09-23 20:22
de_BE.utf8: 2017-09-23 20:22
de_CH.utf8: 2017-09-23 20:22
de_DE.utf8: 2017-09-23 20:22
de_LI.utf8: 2017-09-23 20:22
de_LU.utf8: 2017-09-23 20:22
en_AG : 2017-09-23 20:22
en_AG.utf8: 2017-09-23 20:22
en_AU.utf8: 2017-09-23 20:22
en_BW.utf8: 2017-09-23 20:22
en_CA.utf8: 2017-09-23 20:22
en_DK.utf8: 2017-09-23 20:22
en_GB.utf8: 2017-09-23 20:22
en_HK.utf8: 2017-09-23 20:22
en_IE.utf8: 2017-09-23 20:22
en_IN : 2017-09-23 20:22
en_IN.utf8: 2017-09-23 20:22
en_NG : 2017-09-23 20:22
en_NG.utf8: 2017-09-23 20:22
en_NZ.utf8: 2017-09-23 20:22
en_PH.utf8: 2017-09-23 20:22
en_SG.utf8: 2017-09-23 20:22
en_US.utf8: 2017-09-23 20:22
en_ZA.utf8: 2017-09-23 20:22
en_ZM : 2017-09-23 20:22
en_ZM.utf8: 2017-09-23 20:22
en_ZW.utf8: 2017-09-23 20:22
it_IT.utf8: 2017-09-23 20:22
POSIX : Sep 23 20:22
Здесь я оставлю свои другие решения:
who -b | awk '{print $(NF-1)" "$NF}' >> file.txt
будет печатать последние два столбца (разделенные пробелами) выходных команд , который работает для настройки локали, такой как ваш (согласно образцу в вашем вопросе).
Для выхода на английский язык вам нужны последние два столбца :
who -b | awk '{print $(NF-2)" "$(NF-1)" "$(NF)}' >> file.txt
who -b | sed 's/.* //' >> file.txt
работает для всех локалей, установленных в моей системе (см. тест ниже), в основном он удаляет все до последнего появления двух последующих символов пробела, которые должны совпадать с началом временной метки независимо от ваших настроек локали.
$ for i in $(locale -a); do printf "%-10s: %s\n" $i "$(LANG=$i who -b | sed 's/.* //')"; done
C : Sep 23 20:22
C.UTF-8 : 2017-09-23 20:22
de_AT.utf8: 2017-09-23 20:22
de_BE.utf8: 2017-09-23 20:22
de_CH.utf8: 2017-09-23 20:22
de_DE.utf8: 2017-09-23 20:22
de_LI.utf8: 2017-09-23 20:22
de_LU.utf8: 2017-09-23 20:22
en_AG : 2017-09-23 20:22
en_AG.utf8: 2017-09-23 20:22
en_AU.utf8: 2017-09-23 20:22
en_BW.utf8: 2017-09-23 20:22
en_CA.utf8: 2017-09-23 20:22
en_DK.utf8: 2017-09-23 20:22
en_GB.utf8: 2017-09-23 20:22
en_HK.utf8: 2017-09-23 20:22
en_IE.utf8: 2017-09-23 20:22
en_IN : 2017-09-23 20:22
en_IN.utf8: 2017-09-23 20:22
en_NG : 2017-09-23 20:22
en_NG.utf8: 2017-09-23 20:22
en_NZ.utf8: 2017-09-23 20:22
en_PH.utf8: 2017-09-23 20:22
en_SG.utf8: 2017-09-23 20:22
en_US.utf8: 2017-09-23 20:22
en_ZA.utf8: 2017-09-23 20:22
en_ZM : 2017-09-23 20:22
en_ZM.utf8: 2017-09-23 20:22
en_ZW.utf8: 2017-09-23 20:22
it_IT.utf8: 2017-09-23 20:22
POSIX : Sep 23 20:22
Здесь я оставлю свои другие решения:
who -b | awk '{print $(NF-1)" "$NF}' >> file.txt
будет печатать последние два столбца (разделенные пробелами) выходных команд , который работает для настройки локали, такой как ваш (согласно образцу в вашем вопросе).
Для выхода на английский язык вам нужны последние два столбца :
who -b | awk '{print $(NF-2)" "$(NF-1)" "$(NF)}' >> file.txt
who -b | sed 's/.* //' >> file.txt
работает для всех локалей, установленных в моей системе (см. тест ниже), в основном он удаляет все до последнего появления двух последующих символов пробела, которые должны совпадать с началом временной метки независимо от ваших настроек локали.
$ for i in $(locale -a); do printf "%-10s: %s\n" $i "$(LANG=$i who -b | sed 's/.* //')"; done
C : Sep 23 20:22
C.UTF-8 : 2017-09-23 20:22
de_AT.utf8: 2017-09-23 20:22
de_BE.utf8: 2017-09-23 20:22
de_CH.utf8: 2017-09-23 20:22
de_DE.utf8: 2017-09-23 20:22
de_LI.utf8: 2017-09-23 20:22
de_LU.utf8: 2017-09-23 20:22
en_AG : 2017-09-23 20:22
en_AG.utf8: 2017-09-23 20:22
en_AU.utf8: 2017-09-23 20:22
en_BW.utf8: 2017-09-23 20:22
en_CA.utf8: 2017-09-23 20:22
en_DK.utf8: 2017-09-23 20:22
en_GB.utf8: 2017-09-23 20:22
en_HK.utf8: 2017-09-23 20:22
en_IE.utf8: 2017-09-23 20:22
en_IN : 2017-09-23 20:22
en_IN.utf8: 2017-09-23 20:22
en_NG : 2017-09-23 20:22
en_NG.utf8: 2017-09-23 20:22
en_NZ.utf8: 2017-09-23 20:22
en_PH.utf8: 2017-09-23 20:22
en_SG.utf8: 2017-09-23 20:22
en_US.utf8: 2017-09-23 20:22
en_ZA.utf8: 2017-09-23 20:22
en_ZM : 2017-09-23 20:22
en_ZM.utf8: 2017-09-23 20:22
en_ZW.utf8: 2017-09-23 20:22
it_IT.utf8: 2017-09-23 20:22
POSIX : Sep 23 20:22
Здесь я оставлю свои другие решения:
who -b | awk '{print $(NF-1)" "$NF}' >> file.txt
будет печатать последние два столбца (разделенные пробелами) выходных команд , который работает для настройки локали, такой как ваш (согласно образцу в вашем вопросе).
Для выхода на английский язык вам нужны последние два столбца :
who -b | awk '{print $(NF-2)" "$(NF-1)" "$(NF)}' >> file.txt
Здесь вы: who -b | cut -c23-40, а также who -b | cut -d' ' -f13,14
Это вывод, который я получаю в обоих случаях: 2017-10-11 07:55.
Здесь вы: who -b | cut -c23-40, а также who -b | cut -d' ' -f13,14
Это вывод, который я получаю в обоих случаях: 2017-10-11 07:55.
Здесь вы: who -b | cut -c23-40, а также who -b | cut -d' ' -f13,14
Это вывод, который я получаю в обоих случаях: 2017-10-11 07:55.