Форум сайта python.su
Ne_znay_kaЛучше выдели 60Gb и сделай всю файловую систему монолитной (точек /boot и прочих отдельно не должно быть). Хранилища для тяжёлых файлов будешь подключать в директорию /mnt через файл /etc/fstab. Эти хранилища можно создавать и подключать прямо при загруженной системе уже после установки. В итоге у тебя при загрузке компьютера должен появляться загрузчик GRUB и там должен быть выбор, загрузить Windows или загрузить Linux, и больше ничего. Потом загрузишься в Linux и станешь её оснащать через установщик программ. Я в Windows по полгода не бываю, не нужна она вообще. А игры у меня и в Linux есть. В Dota 2 я играл уже через Steam и в Counter Strike по сети тоже. Также в Age of Empires и даже в Super Mario на эмуляторе восьмибитной приставки. Также играл в Silent Hill на эмуляторе Sony PlayStation. Всё это в Linux можно делать, короче.
а для Linux и чтобы на нем работать мне 50 гб хватит?
Отредактировано py.user.next (Апрель 13, 2022 17:16:20)
Офлайн
py.user.nextУ тебя какой дистрибутив?
Офлайн
xam1816Fedora уже лет десять.
У тебя какой дистрибутив?
Офлайн
py.user.nextскачал Linux. Подскажите какая программа для сравнения кодов.
Офлайн
Ne_znay_kaТут же написано. Программа diff. А в Linux нет расширений .exe у программ. Все программы лежат там в директории /usr/bin и других подобных директориях (/bin, /sbin, /usr/sbin, /usr/local/bin). Но можно и свою директорию подключить со своими программами и скриптами.
скачал Linux. Подскажите какая программа для сравнения кодов.
ls /usr/bin
[guest@localhost ~]$ ls ~/.env/scripts/
mplt.sh pl_build_install.sh pl_build_test.sh pl_test.sh rusmail-bandana.sh
mp.py pl_build_reinstall.sh pl_general.sh pl_uninstall.sh rusmail-x.sh
mulptch.sh pl_build.sh pl_install.sh pml_load.sh
[guest@localhost ~]$
[guest@localhost ~]$ cat ~/.env/scripts/rusmail-x.sh
#!/bin/bash
check_track_number()
{
local barcode="x"
local fname_config="/usr/local/etc/rusmail-x.conf"
local fname_report="$HOME/Desktop/rusmail-x"
local oldhash newhash
local text
oldhash=`cat "$fname_config"`
text=`rusmail.sh check "$barcode"`
[ $? -eq 0 ] || return 1
newhash=`echo "$text" | md5sum | awk '{print $1}'`
[ "$oldhash" != "$newhash" ] && {
echo "$text" | head -3 > "$fname_report"
echo "$newhash" > "$fname_config"
}
return 0
}
main()
{
check_track_number || return 1
echo "Ok"
return 0
}
main "$@" || exit 1
exit 0
[guest@localhost ~]$
[guest@localhost ~]$ which rusmail.sh
/usr/local/bin/rusmail.sh
[guest@localhost ~]$
[guest@localhost ~]$ cat /usr/local/bin/rusmail.sh
#!/bin/bash
# rusmail v0.0.1
# Checks tracking information for barcode on https://pochta.ru
# Copyright (C) 2022 py.user.next mail@mail
progname=`basename $0`
# Print an error message to stderr
# error(str)
error()
{
echo "error: $progname: $1" >&2
}
# Print an message to stdout
# msg(str)
msg()
{
echo "$progname: $1"
}
# Print program usage to stderr
# usage()
usage()
{
echo "usage: $progname check barcode " >&2
}
check()
{
local barcode="$1"
local data
data=`load_data "$barcode"`
[ $? -eq 0 ] || return 1
echo "$data" | filter_data
[ $? -eq 0 ] || return 1
return 0
}
load_data()
{
local barcode="$1"
local url="https://www.pochta.ru/tracking?p_p_id=trackingPortlet_WAR_portalportlet&p_p_lifecycle=2&p_p_state=normal&p_p_mode=view&p_p_resource_id=tracking.get-by-barcodes&p_p_cacheability=cacheLevelPage&p_p_col_id=column-1&p_p_col_count=1"
curl -s -X POST --data "barcodes=$barcode" "$url" || return 1
return 0
}
filter_data()
{
python3 -c '
import sys
import json
import re
def format_date(text):
pat = r"^(.{4})-(.{2})-(.{2})T(.{2}):(.{2}):(.{2}).{4}(.{6})$"
parts = re.search(pat, text).groups()
parts_sorted = (parts[2], format_month(parts[1]),
parts[0], parts[3], parts[4], parts[6])
out = "{} {} {} {}:{} {}".format(*parts_sorted)
return out
def format_month(text):
dct = {
"01": "Янв",
"02": "Фев",
"03": "Мар",
"04": "Апр",
"05": "Мая",
"06": "Июн",
"07": "Июл",
"08": "Авг",
"09": "Сен",
"10": "Окт",
"11": "Ноя",
"12": "Дек"
}
out = dct[text]
return out
def format_city(text):
if text is not None:
out = text
else:
out = "Неопр"
return out
def main():
doc = json.loads(sys.stdin.read())
track_lst = doc["response"][0]["trackingItem"]["trackingHistoryItemList"]
track_res = []
for point in track_lst:
date = format_date(point["date"])
index = point["index"]
city = format_city(point["cityName"])
status = point["humanStatus"]
trackresfmt = "{} [{} {:20}] {}"
track_res.append(trackresfmt.format(date, index, city, status))
out = "\n".join(track_res)
print(out)
try:
main()
except KeyError as exc:
print("error: " + str(exc))
sys.exit(1)
' || return 1
return 0
}
main()
{
case $# in
0|1) usage; return 1;;
2)
if [ "$1" = "check" ]; then
check "$2" || return 1
else
error "invalid command: $1"
return 1
fi
;;
*) error "unknown arglist: \"$*\""; return 1;;
esac
}
main "$@" || exit 1
exit 0
[guest@localhost ~]$
[guest@localhost ~]$ rusmail.sh
usage: rusmail.sh check barcode
[guest@localhost ~]$
[guest@localhost ~]$ rusmail.sh check 11172005104871
09 Янв 2017 11:03 +03:00 [105005 Москва ] Получено отправителем
05 Янв 2017 08:10 +03:00 [105005 Москва ] Прибыло в место вручения
03 Янв 2017 01:16 +03:00 [111981 Москва ] Покинуло сортировочный центр
01 Янв 2017 22:20 +03:00 [140980 Львовский ] Покинуло сортировочный центр
01 Янв 2017 16:37 +03:00 [140983 Львовский ] Сортировка
30 Дек 2016 09:42 +04:00 [443960 Самара ] Покинуло сортировочный центр
28 Дек 2016 10:23 +04:00 [443028 Мехзавод ] Выслано обратно отправителю
30 Ноя 2016 09:47 +04:00 [443028 Мехзавод ] Неудачная попытка вручения
28 Ноя 2016 13:29 +04:00 [443028 Мехзавод ] Прибыло в место вручения
28 Ноя 2016 06:08 +04:00 [443960 Самара ] Покинуло сортировочный центр
27 Ноя 2016 10:38 +04:00 [443960 Самара ] Прибыло в сортировочный центр
26 Ноя 2016 07:50 +03:00 [140980 Львовский ] Покинуло сортировочный центр
25 Ноя 2016 19:17 +03:00 [140983 Львовский ] Сортировка
23 Ноя 2016 20:04 +03:00 [111537 Москва ] Покинуло место приема
23 Ноя 2016 14:51 +03:00 [111726 Неопр ] Принято в отделении связи
[guest@localhost ~]$
[guest@localhost ~]$ rusmail.sh check 39790202014043
08 Янв 2019 15:58 +10:00 [690089 Владивосток ] Получено адресатом
03 Янв 2019 18:27 +10:00 [690089 Владивосток ] Прибыло в место вручения
03 Янв 2019 08:16 +10:00 [690960 Владивосток ] Покинуло сортировочный центр
01 Янв 2019 15:08 +10:00 [690960 Владивосток ] Сортировка
01 Янв 2019 13:58 +10:00 [690960 Владивосток ] Прибыло в сортировочный центр
22 Дек 2018 23:10 +03:00 [102000 Москва ] Покинуло сортировочный центр
22 Дек 2018 22:05 +03:00 [102004 Москва ] Сортировка
22 Дек 2018 17:52 +03:00 [102000 Москва ] Прибыло в сортировочный центр
22 Дек 2018 14:20 +03:00 [102150 Москва ] Покинуло сортировочный центр
22 Дек 2018 05:40 +03:00 [102152 Москва ] Сортировка
22 Дек 2018 05:40 +03:00 [102150 Москва ] Прибыло в сортировочный центр
21 Дек 2018 14:36 +03:00 [394960 Воронеж ] Покинуло сортировочный центр
20 Дек 2018 10:47 +03:00 [394963 Воронеж ] Сортировка
20 Дек 2018 10:47 +03:00 [394960 Воронеж ] Прибыло в сортировочный центр
19 Дек 2018 20:36 +03:00 [397979 Лиски ] Покинуло сортировочный центр
19 Дек 2018 20:10 +03:00 [397979 Лиски ] Сортировка
19 Дек 2018 20:10 +03:00 [397979 Лиски ] Прибыло в сортировочный центр
19 Дек 2018 19:33 +03:00 [397902 Лиски ] Покинуло место приема
19 Дек 2018 12:52 +03:00 [397902 Лиски ] Принято в отделении связи
[guest@localhost ~]$
[guest@localhost ~]$ for i in 11172005104871 39790202014043; do echo "Посылка"; rusmail.sh check $i; done
Посылка
09 Янв 2017 11:03 +03:00 [105005 Москва ] Получено отправителем
05 Янв 2017 08:10 +03:00 [105005 Москва ] Прибыло в место вручения
03 Янв 2017 01:16 +03:00 [111981 Москва ] Покинуло сортировочный центр
01 Янв 2017 22:20 +03:00 [140980 Львовский ] Покинуло сортировочный центр
01 Янв 2017 16:37 +03:00 [140983 Львовский ] Сортировка
30 Дек 2016 09:42 +04:00 [443960 Самара ] Покинуло сортировочный центр
28 Дек 2016 10:23 +04:00 [443028 Мехзавод ] Выслано обратно отправителю
30 Ноя 2016 09:47 +04:00 [443028 Мехзавод ] Неудачная попытка вручения
28 Ноя 2016 13:29 +04:00 [443028 Мехзавод ] Прибыло в место вручения
28 Ноя 2016 06:08 +04:00 [443960 Самара ] Покинуло сортировочный центр
27 Ноя 2016 10:38 +04:00 [443960 Самара ] Прибыло в сортировочный центр
26 Ноя 2016 07:50 +03:00 [140980 Львовский ] Покинуло сортировочный центр
25 Ноя 2016 19:17 +03:00 [140983 Львовский ] Сортировка
23 Ноя 2016 20:04 +03:00 [111537 Москва ] Покинуло место приема
23 Ноя 2016 14:51 +03:00 [111726 Неопр ] Принято в отделении связи
Посылка
08 Янв 2019 15:58 +10:00 [690089 Владивосток ] Получено адресатом
03 Янв 2019 18:27 +10:00 [690089 Владивосток ] Прибыло в место вручения
03 Янв 2019 08:16 +10:00 [690960 Владивосток ] Покинуло сортировочный центр
01 Янв 2019 15:08 +10:00 [690960 Владивосток ] Сортировка
01 Янв 2019 13:58 +10:00 [690960 Владивосток ] Прибыло в сортировочный центр
22 Дек 2018 23:10 +03:00 [102000 Москва ] Покинуло сортировочный центр
22 Дек 2018 22:05 +03:00 [102004 Москва ] Сортировка
22 Дек 2018 17:52 +03:00 [102000 Москва ] Прибыло в сортировочный центр
22 Дек 2018 14:20 +03:00 [102150 Москва ] Покинуло сортировочный центр
22 Дек 2018 05:40 +03:00 [102152 Москва ] Сортировка
22 Дек 2018 05:40 +03:00 [102150 Москва ] Прибыло в сортировочный центр
21 Дек 2018 14:36 +03:00 [394960 Воронеж ] Покинуло сортировочный центр
20 Дек 2018 10:47 +03:00 [394963 Воронеж ] Сортировка
20 Дек 2018 10:47 +03:00 [394960 Воронеж ] Прибыло в сортировочный центр
19 Дек 2018 20:36 +03:00 [397979 Лиски ] Покинуло сортировочный центр
19 Дек 2018 20:10 +03:00 [397979 Лиски ] Сортировка
19 Дек 2018 20:10 +03:00 [397979 Лиски ] Прибыло в сортировочный центр
19 Дек 2018 19:33 +03:00 [397902 Лиски ] Покинуло место приема
19 Дек 2018 12:52 +03:00 [397902 Лиски ] Принято в отделении связи
[guest@localhost ~]$
Отредактировано py.user.next (Апрель 16, 2022 03:17:00)
Офлайн
py.user.nextогромное спасибо буду разбираться
Офлайн
Ne_znay_kaможно не париться и использовать любой онлайн сервис для сравнения текстов
Офлайн
delitetНу, попробуй, сравни тысячу файлов в дереве каталогов, которые располагаются на разной глубине; потом расскажешь, как ты через буфер копировал изменения и сохранял их в текстовые файлы полдня. В Linux'е ты можешь любую программу подключить к любой процедуре. Одна процедура проходит по дереву каталогов, другая процедура выполняет сравнение файлов, и эти процедуры можно объединить в одну, чтобы это происходило синхронно. На всё про всё уйдёт одна секунда и в файле отчёта будет лежать готовый результат в каком-нибудь html-документе, который удобно в браузере просматривать.
можно не париться и использовать любой онлайн сервис для сравнения текстов
delitetУ тебя виндовое мышление. А в виндовом мышлении у тебя никогда ничего нет и поэтому тебе нужны сервисы из Интернета. А в линуксовом мышлении у тебя всегда всё есть и поэтому никакие сервисы никогда и не нужны, у тебя всё в компьютере вот прямо здесь прямо перед глазами.
По запросу “сравнить тексты онлайн” в гугле выбирай любой
Отредактировано py.user.next (Апрель 19, 2022 21:56:39)
Офлайн