diff --git a/.config/bash/module/doc.sh b/.config/bash/module/doc.sh index f31006b..3762923 100644 --- a/.config/bash/module/doc.sh +++ b/.config/bash/module/doc.sh @@ -1,5 +1,5 @@ # Generate a markdown file with all the help info. -# Outputs to ~/.doc/bash.md +# Outputs to `~/.doc/bash.md`. function doc_bash() { local IFS=$'\n' local file="${HOME}/.doc/bash.md" diff --git a/.config/bash/module/docker.sh b/.config/bash/module/docker.sh index 5544c22..2638e91 100644 --- a/.config/bash/module/docker.sh +++ b/.config/bash/module/docker.sh @@ -9,6 +9,17 @@ function docker_health() { docker ps -a | grep Exited } +# Find out container's IP address. +# Usage: docker_ip +function docker_ip() { + docker inspect -f '\''{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'\' "${1}" | sed "s/^.//" | sed "s/.$//" +} + +# Update all docker images. +function docker_update() { + docker images --format "{{.Repository}}:{{.Tag}}" | xargs -L1 docker pull +} + # Prune everything. function docker_prune() { docker system prune --volumes --all @@ -75,17 +86,6 @@ function dcul() { dcu "${@}" && dcl "${@}" } -# Find out container's IP address. -# Usage: docker_up -function docker_ip() { - docker inspect -f '\''{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'\' "${1}" | sed "s/^.//" | sed "s/.$//" -} - -# Update all docker images. -function docker_update() { - docker images --format "{{.Repository}}:{{.Tag}}" | xargs -L1 docker pull -} - # Autocomplete with available services. function _dc_services() { _autocomplete "$(docker compose config --services 2> /dev/null)" diff --git a/.config/bash/module/ffmpeg.sh b/.config/bash/module/ffmpeg.sh index 17455c2..2c75cf1 100644 --- a/.config/bash/module/ffmpeg.sh +++ b/.config/bash/module/ffmpeg.sh @@ -40,9 +40,9 @@ function ffmpeg_mux_cover() { } # Generate music metadata from directory structure. -# Top dir is the Artist name like this: The_Beatles. -# Next are albums like this: 2010_My_love. -# Inside are songs like this: 01_sample.flac. +# Top dir is the Artist name like this: `The_Beatles`. +# Next are albums like this: `2010_My_love`. +# Inside are songs like this: `01_sample.flac`. # Usage: ffmpeg_music_meta function ffmpeg_music_meta() { if [[ "${1}" = "" ]]; then diff --git a/.doc/bash.md b/.doc/bash.md index eddf2d0..46fab79 100644 --- a/.doc/bash.md +++ b/.doc/bash.md @@ -10,16 +10,9 @@ or $ h ``` -## Android. - Command|Description ---|--- emulator [NAME]|Start an Android emulator. Default name is "default". - -## Archive. - -Command|Description ----|--- archive [DIRS]|Archive directories. All directories by default. archive_fast [DIRS]|Archive directories with fast compression. All directories by default. archive_check [FILES]|Check archives integrity. Checks all archives by default. @@ -27,92 +20,34 @@ archive_prune [NAME]|Delete old versions of archives. All archives by default. unarchive [FILES]|Extract previously created archive with checksum validation. archive_name [ARCHIVE] [NAME]|Rename archives. If no name specified, it simplifies archive's name. If no archives specified, apply to all archives. archive_convert|Convert old archives to a new format. TODO: remove me after some time when there won't be any old archives. - -## Battery. - -Command|Description ----|--- battery_level|Print current battery level. - -## Bootstrap. - -Command|Description ----|--- bootstrap_rust|Install Cargo/Rust. bootstrap_texlive|Install TeXLive. bootstrap_grub|Install grub theme. bootstrap_ffmpeg|Install ffmpeg. - -## Cd. - -Command|Description ----|--- cdd |CD (back) to directory. Finds first directory that matches the input (case-insensitive). - -## Checksum. - -Command|Description ----|--- checksum_create [FILES]|Save file checksums. For file with a name "file" it will create a new file called ".file.sha1" with hash in it. All files by default. checksum_check [FILES]|Check stored values against actual files. All files by default. checksum|Calculate hashes for all files recursively and store in a file called "checksum.sha1". - -## Chmod. - -Command|Description ----|--- x |Add executable flag to file. - -## Color. - -Command|Description ----|--- color_test|Print all available colors with their names colored in corresponding color. - -## Copypaste. - -Command|Description ----|--- copy|Copy stdin to system clipboard. Example: echo hi | copy paste|Paste system clipboard to stdout. Example: paste > file.txt - -## Cp. - -Command|Description ----|--- cp |Replaces default cp with rsync. cp_merge |Copy and also merge all changes (delete dst files that do not exist in src). cp_link |Copy by creating hardlinks. Works for directories, too. bcp|Default cp, a.k.a builtin cp. When you don't need rsync. cp_test |Print output of cp_merge without writing anything. - -## Date. - -Command|Description ----|--- today|Print today date in yyyyMMdd format. dow|Current day of week number. - -## Dconf. - -Command|Description ----|--- dconf_load|Load Gnome settings. dconf_save [FILE]|Dump Gnome settings into the file. Default name is gnome.dconf. Do this before changing settings and after, an then run diff to find out what to add to main gnome.dconf. - -## Disk. - -Command|Description ----|--- df|Show only physical drives info. du [DIRS]|Show combined size in SI. Current dir by default. - -## Docker. - -Command|Description ----|--- docker_volumes |Show container's volumes. docker_health|Check if any container exited. +docker_ip |Find out container's IP address. +docker_update|Update all docker images. docker_prune|Prune everything. dc|Docker compose shortcut. dcu [SERVICES]|Docker compose up. @@ -124,48 +59,16 @@ dcs [SERVICES]|Docker compose stop. dcdu [SERVICES]|Docker compose down & up specified services. dcpu [SERVICES]|Docker compose pull & up specified services. dcul [SERVICES]|Docker compose up & attach to logs for specified services. -docker_up |Find out container's IP address. -docker_update|Update all docker images. - -## Doc. - -Command|Description ----|--- -doc_bash|Generate a markdown file with all the help info. Outputs to ~/.doc/bash.md - -## Ffmpeg. - -Command|Description ----|--- +doc_bash|Generate a markdown file with all the help info. Outputs to `~/.doc/bash.md`. ffmpeg_mux_audio |Mux audio into containers. File names in sound and current dirrectories must match. Tmp usage for anime downloads. ffmpeg_mux_cover |Mux cover into music file. -ffmpeg_music_meta |Generate music metadata from directory structure. Top dir is the Artist name like this: The_Beatles. Next are albums like this: 2010_My_love. Inside are songs like this: 01_sample.flac. - -## File. - -Command|Description ----|--- +ffmpeg_music_meta |Generate music metadata from directory structure. Top dir is the Artist name like this: `The_Beatles`. Next are albums like this: `2010_My_love`. Inside are songs like this: `01_sample.flac`. o |Open file/dir in GUI. - -## Find. - -Command|Description ----|--- find_ext|Find all file extensions. find_module|Find all modules. find_function [MODULE]|Find all module functions. Functions from all modules by default. - -## Fix. - -Command|Description ----|--- fix_ethernet_speed |Fix when ethernet mistakenly detects 100 Mb instead of 1000 Mb. SPEED is one of 10/100/1000 etc. fix_files_sftp|Fix nautilus after typing wrong sftp password. - -## Git. - -Command|Description ----|--- gps|Git push. gpsf|Git force push. gpl|Git pull. @@ -190,29 +93,14 @@ gr [COMMIT COUNT]|Rebase by X commits or from root. When COUNT is 0 - rebase fro gu [EMAIL]|Specify git user as Dmitry Voronin with provided email. gg |Get my git repo. gdc |See diff for a specific commit. - -## Help. - -Command|Description ----|--- help |Get help about dotfiles bash function. h |Short for help. - -## Ls. - -Command|Description ----|--- l [DIRS]|List files in dirs. Current dir by default. ll [DIRS]|List last modified files first. Current dir by default. lll [DEPTH] [DIRS]|List files in tree structure. Current dir by default. Depth can be omitted by passing - (dash). llll [DIRS]|List files recursively. Current dir by default. la [DIRS]|List all files in dirs, incl. hidden files. Current dir by default. lla [DIRS]|List all files in dirs, incl. hidden files, sorted by mtime. Current dir by default. - -## Name. - -Command|Description ----|--- name [FILES]|Rename files to strip all special characters. All files by default. name_hash [FILES]|Rename all files to their hashes while keeping extensions. All files by default. name_hash_check [FILES]|Check hashes for previously renamed files. All files by default. @@ -222,89 +110,24 @@ name_ext [FILES]|Rename files with new extension. All files by defau name_prefix [FILES]|Change file name prefix. All matching files by default. name_postfix [FILES]|Change file name postfix. All matching files by default. name_replace [FILES]|Replace part of the name. All matching files by default. - -## Ncdu. - -Command|Description ----|--- ncdu [DIRS]|Search only on current filesystem. Current dir by default. - -## Notify. - -Command|Description ----|--- notify |Send Telegram notification. notify_silent |Send silent Telegram notification. - -## Own. - -Command|Description ----|--- own [USER] [FILES]|Change file ownership to specified user id and restrict access to him. Root user by default. This directory recursively by default. - -## Pack. - -Command|Description ----|--- pack [FILES]|Pack files into desired format. All files and directories by default. unpack [FILES]|Attempt to unpack. All supported formats by default. - -## Parse. - -Command|Description ----|--- parse_simplify |Parse data and output simplified format. parse_camel |Parse to CamelCase. parse_alnum |Parse data keeping only alphanumeric characters. - -## Permissions. - -Command|Description ----|--- perm_share|Recursively change permissions to allow read sharing with group and others. perm|Recursively change permissions to restrict access for group and others. - -## Ps. - -Command|Description ----|--- ps |Find process and filter. - -## Recursive. - -Command|Description ----|--- recursive |Run something recursively over all directories. recursive1 |Run something recursively over directories of 1 depth (excluding current dir). - -## Rust. - -Command|Description ----|--- rust_book|Open Rust book. - -## Su. - -Command|Description ----|--- s [USER]|Su shortcut for lazy me. Root by default. - -## Terminal. - -Command|Description ----|--- tsize|Get terminal size. - -## Tmp. - -Command|Description ----|--- tmp|CD into host's primary tmp dir. - -## Tmux. - -Command|Description ----|--- ta [NAME]|Create/attach to named session. By default uses name "main". td|Detach from running session. tl|List running sessions. @@ -312,58 +135,17 @@ trn [NAME]|Rename current session. Uses current dir name by default. tn [NAME]|Assign name to window. Uses current dir name by default. tk [NAME]|Kill specified session. By default it kills "main" session. tka|Kill all sessions. - -## Todo. - -Command|Description ----|--- todo|Open ~/.todo.md file. - -## Toolbx. - -Command|Description ----|--- tba [NAME]|Attach/create toolbx container with specified name. By default uses "main" name. tbk [NAME]|Remove toolbx container with specified name. By default uses "main" name. tb_rpmfusion [NAME]|Install rpm-fusion repository into container with specified name. By default uses "main" name. tbl|List all available containers. - -## Transcode. - -Command|Description ----|--- transcode [FILES]|Convert between different formats. By default tries to convert all files. - -## Try. - -Command|Description ----|--- try |Retry command every 2 sec until it completes successfully. - -## Vdl. - -Command|Description ----|--- vdl [LINK]|Download video from URL. When no [LINK] specified, it tries to update previously downloaded link. vdl_vk |Temporary fix for vk downloads. vdl_file |Download all videos from file with links. - -## Vi. - -Command|Description ----|--- v|Neovim shortcut. - -## Wallpaper. - -Command|Description ----|--- wallpaper |Set specified file as a wallpaper. - -## Watch. - -Command|Description ----|--- w |Watch command output with 2 seconds interval. ww |Watch command output with minimal interval. -