Browse Source

Перенос по файлам

master
parent
commit
4c1bdab4c9
  1. 38
      Script/a_download
  2. 29
      Script/a_image
  3. 18
      Script/a_install
  4. 17
      Script/a_ssh
  5. 48
      Script/a_utils
  6. 27
      Script/a_video
  7. 150
      Script/alias_main

38
Script/a_download

@ -0,0 +1,38 @@
#!/bin/bash
vd='~/.local/bin/yt-dlp'
alias ${prefix}download_yt_dlp="${vd}"
download_custom()
{
cmd="${vd} -f $1 -R 10000 -i -o '%(upload_date)s-%(title)s-%(id)s.%(ext)s' $2"
eval $cmd
}
mkalias_with_prefix 'download_custom'
download_worst()
{
download_custom 'worst/worstvideo+worstaudio' "$1"
}
mkalias_with_prefix 'download_worst'
download_best()
{
download_custom 'best/bestvideo+bestaudio' "$1"
}
mkalias_with_prefix 'download_best'
download_worst_audio()
{
download_custom 'worstaudio' "$1"
}
mkalias_with_prefix 'download_worst_audio'
download_format_list()
{
cmd="${vd} -F $1"
eval $cmd
}
mkalias_with_prefix 'download_format_list'

29
Script/a_image

@ -0,0 +1,29 @@
#!/bin/bash
img_all_to_djvu()
{
[ ${in_files_pattern} == '' ] && printf "Объедидение файлов в djvu\nУкажите входной шаблон. Например '*.jpg'\n" && return
in_files_pattern=$1
for i in ${in_files_pattern}; do bmptopnm $i > pnm/$i.pnm; done
for i in *; do c44 -dpi 300 -slice 60+7+7 $i $i.djvu; done
djvm -c new.djvu *.djvu
}
mkalias_with_prefix 'img_all_to_djvu'
img_resize_and_del_exif()
{
search_template=$1
[ "${search_template}" == '' ] && printf "Изменение размера и удаление exif\nУкажите входной шаблон файлов и ширину. Например: '*.jpg' 1024\n" && return
image_width=$2
[ "${image_width}" = "" ] && image_width="1024" && printf "Выбрана ширина '${image_width}'\n"
for entry in "$search_template"
do
echo "${entry}"
convert "${entry}" -resize ${image_width} -strip "new.jpg"
done
}
mkalias_with_prefix 'img_resize_and_del_exif'

18
Script/a_install

@ -18,7 +18,7 @@ install_alt_linux_system_full_upgrade()
}
mkalias_with_prefix 'install_alt_linux_system_full_upgrade'
install_alt_linux_defaults()
install_alt_linux_progs()
{
printf "Установка важных программ\n"
sudo apt-get install \
@ -58,9 +58,10 @@ install_alt_linux_defaults()
python3-module-pip \
NetworkManager-tui \
flatpak\
tlp
tlp\
syncthing
}
mkalias_with_prefix 'install_alt_linux_defaults'
mkalias_with_prefix 'install_alt_linux_progs'
install_alt_linux_skype_telegram_zoom()
{
@ -92,13 +93,12 @@ install_gedit_duplicate_plugin()
}
mkalias_with_prefix 'install_gedit_duplicate_plugin'
install_n2n()
{
printf "Установка n2n\n"
ask_continue && return
# n2n
wget https://github.com/ntop/n2n/releases/download/3.0/n2n-3.0.0-1038.x86_64.rpm
wget -c https://github.com/ntop/n2n/releases/download/3.0/n2n-3.0.0-1038.x86_64.rpm
sudo apt-get install ./n2n-3.0.0-1038.x86_64.rpm
}
mkalias_with_prefix 'install_n2n'
@ -108,7 +108,7 @@ install_n2n_alt_rpi()
printf "Установка n2n\n"
ask_continue && return
# n2n rpi altlinux
wget https://packages.ntop.org/RaspberryPI/bullseye_pi/arm64/n2n/n2n_3.1.1-76-g709590d_arm64.deb
wget -c https://packages.ntop.org/RaspberryPI/bullseye_pi/arm64/n2n/n2n_3.1.1-76-g709590d_arm64.deb
sudo epm -i ./n2n_3.1.1-76-g709590d_arm64.deb
}
mkalias_with_prefix 'install_n2n_alt_rpi'
@ -261,10 +261,10 @@ mkalias_with_prefix 'install_fuse_config'
install_wifi_for_Android_13_in_altlinux()
{
printf "Установка возможности пользоваться fusermount обычным пользователям для AltLinux\n"
ask_continue && return
[ "$1" == "" ] printf "Установка возможности пользоваться fusermount обычным пользователям для AltLinux\nУкажите имя соединения\n" && return
WIFINAME=$1
# Enable wi-fi for Android 13 in altlinux
nmcli connection modify WIFINAME wifi-sec.pmf 1
nmcli connection modify ${WIFINAME} wifi-sec.pmf 1
}
mkalias_with_prefix 'install_wifi_for_Android_13_in_altlinux'

17
Script/a_ssh

@ -0,0 +1,17 @@
#!/bin/bash
ssh_del_known_host()
{
in_host_pattern=$1
[ "${in_host_pattern}" = "" ] && printf "Укажите шаблон адреса, например '192.168.1.'\n" && return
eval "sudo cp -u ~/.ssh/known_hosts ~/.ssh/known_hosts.backup && cat ~/.ssh/known_hosts.backup | grep -v ${in_host_pattern} > ~/.ssh/known_hosts"
}
mkalias_with_prefix 'ssh_del_known_host'
ssh_for_openwpt_10.3_kamikadze()
{
in_host_pattern=$1
ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -c 3des-cbc ${in_host_pattern}
}
mkalias_with_prefix 'ssh_for_openwpt_10.3_kamikadze'

48
Script/a_utils

@ -0,0 +1,48 @@
#!/bin/bash
alias ${prefix}archive_each_file_into_separate_archive="find . -mindepth 1 -maxdepth 1 -type f -exec tar -cvzf 'out/{}.tgz' '{}' \;"
unicode_U200B_correct ()
{
[ $1 == '' ] && printf "Корректировка ошибки в latex U200B\nУкажите входной файл" && return
perl -CSD -pe "s/\N{U+200B}//gu" < $1 > noU200B_$1
}
mkalias_with_prefix 'unicode_U200B_correct'
festival_txt2mp3 ()
{
[ $1 == '' ] && printf "Озвучивание текста\nУкажите входной текстовый файл. Выходной будет с тем же именем, но mp3\n" && return
in_file=$1
out_wav_file_name="$1.wav"
out_mp3_file_name="$1.mp3"
cat "$1" | sed 's/[^a-zA-ZА-Яа-я0-9., ]//g' | text2wave -o "$out_wav_file_name"
lame "$out_wav_file_name" "$out_mp3_file_name"
rm "$out_wav_file_name"
}
mkalias_with_prefix 'festival_txt2mp3'
alias ${prefix}gen_password='pwgen -n 16'
rand_string()
{
tr -dc A-Za-z0-9 < /dev/urandom | dd bs=${RANDOM:1:2} count=1 2>/dev/null
}
mkalias_with_prefix 'rand_string'
check_internet_script()
{
host="ya.ru"
while true; do
result=$(ping -c 3 $host | tail -2 | head -1 | awk '{print $4}')
if [ $result -eq 0 ]; then
echo "Нет интернета"
break
fi
sleep 180
done
}
mkalias_with_prefix 'check_internet_script'

27
Script/a_video

@ -0,0 +1,27 @@
#!/bin/bash
video_encode_240()
{
[ $1 == '' ] && printf "Перекодирование видео в формат 240*180\nУкажите входной шаблон. Например '*.mp4'\n" && return
for filename in "$1"; do
echo "Take '${filename}'";
if [ -f "${filename}" ]; then
echo "Make '${filename}'";
ffmpeg -i "${filename}" -vcodec libx264 -vb 50K -s 240x180 -acodec libmp3lame -ab 16K -strict -2 "${filename}_240.mkv"
fi
done
}
mkalias_with_prefix 'video_encode_240'
video_union_video_and_audio()
{
[ $1 == '' ] && printf "Объедидение видео и аудио\nУкажите входной файл видео и аудио. Например: 1.mp4 1.wav\n" && return
ffmpeg -i $1 -i $2 -c:a aac -b:a 128k -vcodec copy -map 0:v -map 1:a o.mp4
}
mkalias_with_prefix 'video_union_video_and_audio'
cur_dir=${alias_dir}
alias parse_arg_lib='${cur_dir}/../video_tools/parse_arg_lib'
alias ${prefix}video_img_and_wav2video='${cur_dir}/../video_tools/img_and_wav2video'
#alias ${prefix}video_union_video_and_audio='${cur_dir}/../video_tools/union_video_and_audio.bash'

150
Script/alias_main

@ -21,156 +21,18 @@ ask_continue()
source "${alias_dir}/a_install"
source "${alias_dir}/a_pdf"
source "${alias_dir}/a_hdd"
source "${alias_dir}/a_openwrt"
source "${alias_dir}/a_utils"
source "${alias_dir}/a_video"
source "${alias_dir}/a_image"
source "${alias_dir}/a_ssh"
source "${alias_dir}/a_download"
alias ${prefix}archive_each_file_into_separate_archive="find . -mindepth 1 -maxdepth 1 -type f -exec tar -cvzf 'out/{}.tgz' '{}' \;"
unicode_U200B_correct ()
{
[ $1 == '' ] && printf "Корректировка ошибки в latex U200B\nУкажите входной файл" && return
perl -CSD -pe "s/\N{U+200B}//gu" < $1 > noU200B_$1
}
mkalias_with_prefix 'unicode_U200B_correct'
festival_txt2mp3 ()
{
[ $1 == '' ] && printf "Озвучивание текста\nУкажите входной текстовый файл. Выходной будет с тем же именем, но mp3\n" && return
in_file=$1
out_wav_file_name="$1.wav"
out_mp3_file_name="$1.mp3"
cat "$1" | sed 's/[^a-zA-ZА-Яа-я0-9., ]//g' | text2wave -o "$out_wav_file_name"
lame "$out_wav_file_name" "$out_mp3_file_name"
rm "$out_wav_file_name"
}
mkalias_with_prefix 'festival_txt2mp3'
encode_240()
{
[ $1 == '' ] && printf "Перекодирование видео в формат 240*180\nУкажите входной шаблон. Например '*.mp4'\n" && return
for filename in "$1"; do
echo "Take '${filename}'";
if [ -f "${filename}" ]; then
echo "Make '${filename}'";
ffmpeg -i "${filename}" -vcodec libx264 -vb 50K -s 240x180 -acodec libmp3lame -ab 16K -strict -2 "${filename}_240.mkv"
fi
done
}
mkalias_with_prefix 'encode_240'
union_video_and_audio()
{
[ $1 == '' ] && printf "Объедидение видео и аудио\nУкажите входной файл видео и аудио. Например: 1.mp4 1.wav\n" && return
ffmpeg -i $1 -i $2 -c:a aac -b:a 128k -vcodec copy -map 0:v -map 1:a o.mp4
}
mkalias_with_prefix 'union_video_and_audio'
vd='~/.local/bin/yt-dlp'
alias ${prefix}download_yt_dlp="${vd}"
download_worst()
{
cmd="${vd} -f 'worst/worstvideo+worstaudio' -R 10000 -i -o '%(upload_date)s-%(title)s-%(id)s.%(ext)s' $1"
eval $cmd
}
mkalias_with_prefix 'download_worst'
download_best()
{
cmd="${vd} -f 'best/bestvideo+bestaudio' -R 10000 -i -o '%(upload_date)s-%(title)s-%(id)s.%(ext)s' $1"
eval $cmd
}
mkalias_with_prefix 'download_best'
download_worst_audio()
{
cmd="${vd} -f 'worstaudio' -R 10000 -i -o '%(upload_date)s-%(title)s-%(id)s.%(ext)s' $1"
eval $cmd
}
mkalias_with_prefix 'download_worst_audio'
download_format_list()
{
cmd="${vd} -F $1"
eval $cmd
}
mkalias_with_prefix 'download_format_list'
download_custom()
{
cmd="${vd} -f $1 -R 10000 -i -o '%(upload_date)s-%(title)s-%(id)s.%(ext)s' $2"
eval $cmd
}
mkalias_with_prefix 'download_custom'
alias ${prefix}gen_password='pwgen -n 16'
cur_dir=${alias_dir}
alias parse_arg_lib='${cur_dir}/../video_tools/parse_arg_lib'
alias ${prefix}img_and_wav2video='${cur_dir}/../video_tools/img_and_wav2video'
alias ${prefix}union_video_and_audio='${cur_dir}/../video_tools/union_video_and_audio.bash'
all_to_djvu()
{
[ ${in_files_pattern} == '' ] && printf "Объедидение файлов в djvu\nУкажите входной шаблон. Например '*.jpg'\n" && return
in_files_pattern=$1
for i in ${in_files_pattern}; do bmptopnm $i > pnm/$i.pnm; done
for i in *; do c44 -dpi 300 -slice 60+7+7 $i $i.djvu; done
djvm -c new.djvu *.djvu
}
mkalias_with_prefix 'all_to_djvu'
resize_and_del_exif()
{
search_template=$1
[ "${search_template}" == '' ] && printf "Изменение размера и удаление exif\nУкажите входной шаблон файлов и ширину. Например: '*.jpg' 1024\n" && return
image_width=$2
[ "${image_width}" = "" ] && image_width="1024" && printf "Выбрана ширина '${image_width}'\n"
for entry in "$search_template"
do
echo "${entry}"
convert "${entry}" -resize ${image_width} -strip "new.jpg"
done
}
mkalias_with_prefix 'resize_and_del_exif'
ssh_del_known_host()
{
in_host_pattern=$1
[ "${in_host_pattern}" = "" ] && printf "Укажите шаблон адреса, например '192.168.1.'\n" && return
eval "sudo cp -u ~/.ssh/known_hosts ~/.ssh/known_hosts.backup && cat ~/.ssh/known_hosts.backup | grep -v ${in_host_pattern} > ~/.ssh/known_hosts"
}
mkalias_with_prefix 'ssh_del_known_host'
ssh_for_openwpt_10.3_kamikadze()
{
in_host_pattern=$1
ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -c 3des-cbc ${in_host_pattern}
}
mkalias_with_prefix 'ssh_for_openwpt_10.3_kamikadze'
rand_string()
{
tr -dc A-Za-z0-9 < /dev/urandom | dd bs=${RANDOM:1:2} count=1 2>/dev/null
}
mkalias_with_prefix 'rand_string'
check_internet_script()
{
host="ya.ru"
while true; do
result=$(ping -c 3 $host | tail -2 | head -1 | awk '{print $4}')
if [ $result -eq 0 ]; then
echo "Нет интернета"
break
fi
sleep 180
done
}
mkalias_with_prefix 'check_internet_script'

Loading…
Cancel
Save