sql Перенос данных из другой таблицы этой же базы
sql
достать с таблицы articles все id
И добавить их в таблицу article_flag
где есть столбцы: article_id и flag_id;
в поле flag_id всегда ставим '3'
Решение
Предварительно сделай уникальным сочетание
article_id и flag_id
потом делай запрос
INSERT IGNORE INTO article_flag (article_id, flag_id)
SELECT id, '3'
FROM articles;
rsync копирование
apt-get install rsync
rsync -h
Для каталогов
rsync -a --progress откуда куда
Вместо -r используем -a Там сохраняет свойства(время права)
-v: подробный вывод.
-r: рекурсивно копирует данные (но не сохраняет временные метки и разрешения при передаче данных).
-a: режим архива, позволяет рекурсивно копировать файлы, а также сохраняет символические ссылки, права доступа к файлам, права владения пользователей и групп и временные метки.
-z: сжатие данных файла.
-h: human-readable, информация на выводе в формате, удобном для чтения.
rsync -zah --progress откуда куда
rsync -zvh --progress откуда куда
rsync -zvh --progress file1 /var/www
Копирование на удалённый
rsync -a --progress откуда root@ip:/var/www
Копирование с удалённого
rsync -a --progress root@ip:/var/www/file1 /root/test
Только изменения (заменяет файлы, если они изменены)
rsync --update -av откуда куда
Не трогать изменённые файлы
rsync --ignore-existing -av откуда куда
Ограничить по скорости
rsync --bwlimit=100 -zah --progress откуда куда
Для указания порта
rsync -avz --bwlimit=500 -e "ssh -p 1234" /local_folder/ user@host:/remote_folder/
ssh подключиться
ssh root@IP -p PORT
Временная таблица sql TEMPORARY
При ошибке ERROR 1093 (HY000) at line 25: Table 'comments' is specified twice, both as a target for 'INSERT' and as a separate source for data
CREATE TEMPORARY TABLE temp_comments AS
SELECT id FROM comments WHERE created_at = '2015-03-09 02:22:57' LIMIT 1;
DROP TEMPORARY TABLE temp_comments;
".(!empty($item['parent_date']) ? "CREATE TEMPORARY TABLE temp_comments AS
SELECT id FROM comments WHERE created_at = '".$item['parent_date']."' LIMIT 1;" : "")."
INSERT IGNORE INTO `comments` (
`group_type`,
`group_id`,
`model_type`,
`model_id`,
`group_ip`,
".(!empty($item['parent_date']) ? "`parent_id`, " : "")."
`rating`,
`score`,
`body`,
`created_at`
) VALUES (
'App\Models\User',
'1',
'App\Models\Article',
(SELECT `id` FROM `articles` WHERE `url` = '".$item['article_url']."' LIMIT 1),
'".$item['ip']."',
".(!empty($item['parent_date']) ? "(SELECT id FROM temp_comments), " : "")."
'".$item['rating']."',
'0',
'".$item['text']."',
'".$item['date']."'
);
".(!empty($item['parent_date']) ? "DROP TEMPORARY TABLE temp_comments;" : "")."
Ключи ssh быстро подключаться
на винде в cmd
ssh-keygen.exe
или на линуксе
ssh-keygen
То в папке пользователя создаётся .ssh
На самом линуксе, к которому подключаться,
открываем
nano /root/.ssh/authorized_keys
И на новой строки копируем наш ключ, который с .pub
chmod 0600 /root/.ssh/authorized_keys
Если при создании ключа, указывали его другое имя, то при логине
указываем файл приват ключа
ssh -i .\mykey root@ip -p PORT
А если нет, то без ключа i
ssh root@ip -p PORT
https://youtu.be/-KOMKBtL_7I
linux bash установить ssh сервер
sudo apt install openssh-server
sudo service ssh status
Учу python по книге игра шарик
from tkinter import *
import random
import time
class Ball:
def __init__(self, canvas, paddle, color):
self.canvas = canvas
self.paddle = paddle
self.id = canvas.create_oval(10, 10, 25, 25, fill=color)
self.canvas.move(self.id, 245, 100)
starts = [-3, -2, -1, 1, 2, 3]
random.shuffle(starts)
self.x = starts[0]
self.y = -3
self.canvas_height = self.canvas.winfo_height()
self.canvas_width = self.canvas.winfo_width()
self.hit_bottom = False
def hit_paddle(self, pos):
paddle_pos = self.canvas.coords(self.paddle.id)
if pos[2] >= paddle_pos[0] and pos[0] <= paddle_pos[2]:
if pos[3] >= paddle_pos[1] and pos[3] <= paddle_pos[3]:
return True
return False
def draw(self):
self.canvas.move(self.id, self.x, self.y)
pos = self.canvas.coords(self.id)
if pos[1] <= 0:
self.y = 3
if pos[3] >= self.canvas_height:
self.hit_bottom = True
if self.hit_paddle(pos) == True:
self.y = -3
if pos[0] <= 0:
self.x = 3
if pos[2] >= self.canvas_width:
self.x = -3
class Paddle:
def __init__(self, canvas, color):
self.canvas = canvas
self.id = canvas.create_rectangle(0, 0, 100, 10, fill=color)
self.canvas.move(self.id, 200, 300)
self.x = 0
self.canvas_width = self.canvas.winfo_width()
self.canvas.bind_all('<KeyPress-Left>', self.turn_left)
self.canvas.bind_all('<KeyPress-Right>', self.turn_right)
def draw(self):
self.canvas.move(self.id, self.x, 0)
pos = self.canvas.coords(self.id)
if pos[0] <= 0:
self.x = 0
elif pos[2] >= self.canvas_width:
self.x = 0
def turn_left(self, evt):
self.x = -2
def turn_right(self, evt):
self.x = 2
tk = Tk()
tk.title("Игра")
tk.resizable(0, 0)
tk.wm_attributes("-topmost", 1)
canvas = Canvas(tk, width=500, height=400, bd=0, highlightthickness=0)
canvas.pack()
tk.update()
paddle = Paddle(canvas, 'blue')
ball = Ball(canvas, paddle, 'red')
while True:
if ball.hit_bottom == False:
ball.draw()
paddle.draw()
tk.update_idletasks()
tk.update()
time.sleep(0.01)
sql Удалить все данные и индексы с таблицы, пересоздав её
TRUNCATE TABLE articles;
TRUNCATE TABLE article_chapter;
sql по боту выгрузку количество людей по городам
SELECT COUNT(*) AS kol, `city` FROM `users` GROUP BY `city` ORDER BY kol DESC
Изменить токен для подключения в Git
Не проверял, через 90 дней протестирую..
Для изменения токена для подключения в Git выполните команду:
git config --global credential.helper store
Затем выполните команду:
git pull
Введите свои новые учетные данные (имя пользователя и токен).
Завершив работу с токеном, вы можете удалить его из кэша, выполните команду:
git config --global --unset credential.helper
Нажать правую кнопку мыши на windows
Зажать Shift и нажать F10
Shift F10
Установить git на windows
https://git-scm.com/downloads
https://www.youtube.com/watch?v=GsG5roSGha0
Почему выбрал эти языки программирования
python - для быстрого решения бизнес задач
golang - для производительности в нагруженных местах, (это тот же си, только встроенная многопоточность и на нем быстрее и удобнее писать)
Приоритетнее решать задачи,
Оптимизировать - вторично
sql версия version
SELECT VERSION();
SHOW PRIVILEGES;
SHOW DATABASES;
USE bd1;
SHOW TABLES;
Изменить разделители
DELIMITER $$ ;
DELIMITER ; $$
GO Golang install
In Android termux:
apt update && apt upgrade && pkg install golang
nano hello.go
package main
import "fmt"
func main() {
fmt.Println("Hello world")
}
go build ./hello.go
./hello
OR
go run ./hello.go
In windows
https://go.dev/doc/install
Bash Linux
// Переходы
cd /var/www
cd www
cd ..
// Что в папке
ls
// Где я
pwd
// Создать папку
mkdir NAME
// Удалить
rm FOLDER -rf
// Узнать размер вес размер папки (s этой папки, h норм формат)
du -hs /home
du -h file.txt
https://itproffi.ru/kak-uznat-razmer-papki-v-linux/
// Инфа о файле
stat file.txt
// Доступное место быстрый просмотр
df -h (df -i для узлов, записи расположений файлов)
Архив
sudo apt install zip unzip
zip -r /path/to/files/*
unzip archive.zip
-d удалить файл из архива
-r - рекурсивно обходить каталоги
-0 - только архивировать, без сжатия
-9 - наилучший степень сжатия
-F - исправить zip файл
-e - шифровать файлы
zip -9 file.zip data-dump.sql
Dump SQL
mysqldump -u USER -p PASSWORD -h HOST DATABASE > data-dump.sql
mysqldump -u USER -p PASSWORD DATABASE > data-dump.sql
mysqldump -u USER -p PASSWORD DATABASE | gzip > `date +dump%Y%m%d_%H%M%S.sql.gz`
mysql -u root -p PASSWORD
CREATE DATABASE new_database;
mysql -u USER -p PASSWORD DATABASE < data-dump.sql
USE new_database;
SHOW TABLES;
https://www.oslogic.ru/knowledge/443/dampy-baz-dannyh-mysql-mysqldump/
Half Life 2 читы коды
во время иры намите ~
sv_cheats 1 включает возмоность читов
impulse 82 машин
impulse 83 лодка
impulse 101 выдать вс ору через некоторое время перестат раотать
noclip ходить через стены
f4 вид от третьего
god езсмертие
sv_cheats 1; mp_friendlyfire 1; impulse 101;
impulse 101; give item_healthkit; give item_healthkit; give item_healthkit; give item_healthkit; give item_healthkit; give item_healthkit; give item_healthkit;
give item_ammo_crossbow; give item_ammo_crossbow; give item_ammo_crossbow;
impulse 101; give item_ammo_crossbow; give item_ammo_crossbow; give item_ammo_crossbow; give item_healthkit; give item_healthkit; give item_healthkit; give item_healthkit; give item_battery; give item_battery; give item_battery; give item_battery;
sql битрикс ценные пользователи
SELECT
`USER_ID`,
COUNT(*) AS quantity,
ROUND(SUM(PRICE)) AS summa
FROM `b_sale_order`
WHERE
`LID` = 's1' AND
`CANCELED` = 'N' AND
`DATE_INSERT` > '2021-01-01'
GROUP BY USER_ID
ORDER BY summa DESC
LIMIT 50
Психология дитя родитель взрослый
дитя - хочу, шутить играть, радоваться, счастье
родитель - определяет правильность поступков дитя, совесть, запрещает, все осуждает
взрослый - нужно целесообразно, исполнитель, так же оценщик ситуации, специалист по работе
termux разделить на несколько окон
pkg install tmux
ctrl b %
ctrl b "
публичнвй сайт на телефоне через termux
ngrok.com
mkdir ngrok
cd ngrok/
git clone https://github.com/tchelospy/termux-ngrok.git
cd termux-ngrok/
chmod +x termux-ngrok.sh
./termux-ngrok.sh
ngrok http 3000
php разница в скорости работы двух знаков равно и трех
<?php
$start = microtime(true);
for ($i=0; $i < 1000; $i++) {
$a = 5;
$b = 5;
if ($a == $b) {
// какой-то код
}
}
$end = microtime(true);
$time1 = $end - $start;
$start = microtime(true);
for ($i=0; $i < 1000; $i++) {
$a = 5;
$b = 5;
if ($a === $b) {
// какой-то код
}
}
$end = microtime(true);
$time2 = $end - $start;
echo "Время выполнения с двумя знаками равно: $time1 секунд\n";
echo "Время выполнения с тремя знаками равно: $time2 секунд\n";
Расслабляющий текст от ChatGPT
Закрой глаза и подумай о том, что для тебя действительно важно. Направь свое внимание на приятные мысли и думай о достижениях, которые ты получил. Попробуй почувствовать блаженство и восхищение от того, что достиг.
Смысл жизни во вселенной от ChatGPT
Смысл жизни во Вселенной остаётся загадкой для человечества. Некоторые говорят, что смыслом жизни является поиск и нахождение счастья. Другие думают, что целью жизни может быть достижение знаний и понимания того, что происходит в Вселенной. И другие предполагают, что наша цель в жизни может быть создание и развитие во Вселенной. В конце концов, существует множество разных подходов и мнений для ответа на вопрос о смысле жизни во Вселенной и никто не находит однозначного ответа.
termux install ssh client
pkg install openssh
Горячие клавиши регулирования яркости и звука на python
import keyboard #pip install keyboard
import screen_brightness_control as sbc #pip install screen_brightness_control
import os
switch1 = 0
brightness_step = 4;
def change_brightness(to_up):
#global sbc
brightness = (sbc.get_brightness())[0];
if to_up :
brightness += brightness_step
else :
brightness -= brightness_step
if brightness > 100 :
brightness = 100
if brightness < 0 :
brightness = 0
show("brightness " + str(brightness))
sbc.set_brightness(brightness)
def function_up():
if switch1 == 0 :
keyboard.send("volume up")
show("volume up")
return
change_brightness(True)
def function_down():
if switch1 == 0 :
keyboard.send("volume down")
show("volume down")
return
change_brightness(False)
def function_switch():
global switch1
switch1 += 1
if switch1 == 2 :
switch1 = 0
def show(text) :
os.system('cls||clear')
print(text)
def start():
keyboard.add_hotkey("F10", function_up)
keyboard.add_hotkey("F9", function_down)
keyboard.add_hotkey("F8", function_switch)
sbc.set_brightness(20)
for number in range(20):
keyboard.send("volume down")
show("F8 - switch\nF10 - up\nF9 - down")
text = input()
if text == "1":
start()
start()