Skip to content

Latest commit

 

History

History
211 lines (196 loc) · 11.2 KB

CHANGELOG.md

File metadata and controls

211 lines (196 loc) · 11.2 KB

Changelog

All notable changes to the "BashSnippets" extension will be documented in this file.

[1.0.7] - 2024-02-14

Fixed

  • Fixed known issues with the extension.

[1.0.6] - 2024-02-10

Added

  • Added the following new snippets:
    • paramrepdef : - Parameter expansion with replacement and default value
    • cd : - Change directory
    • mkdir : - Make directory
    • touch : - Create a new file
    • rm : - Remove a file
    • ls : - List directory contents
    • grep : - Search for a pattern in a file
    • find : - Find files in a directory
    • tar : - Create a tar archive
    • untar : - Extract a tar archive
    • wget : - Download a file from the internet
    • curl : - Transfer data from or to a server
    • chmod : - Change file permissions
    • chown : - Change file owner and group
    • chgrp : - Change file group
    • ps : - List running processes
    • kill : - Kill a process
    • top : - Display Linux processes
    • free : - Display amount of free and used memory in the system
    • df : - Display disk usage
    • du : - Display disk usage statistics
    • uname : - Print system information
    • date : - Display the system date and time
    • uptime : - Show how long the system has been running
    • who : - Show who is logged on
    • w : - Show who is logged on and what they are doing
    • finger : - Display information about user
    • id : - Print real and effective user and group IDs
    • last : - Show last logins of users and ttys
    • whoami : - Print the effective userid
    • groups : - Print the groups a user is in
    • hostname : - Print the system hostname
    • dmesg : - Print or control the kernel ring buffer
    • lsmod : - Show the status of modules in the Linux Kernel
    • lspci : - List all PCI devices
    • lsusb : - List all USB devices
    • lscpu : - Display information about the CPU architecture
    • lsblk : - List block devices
    • lshw : - List hardware
    • lsscsi : - List SCSI devices
    • lsdev : - List devices
    • checknet : - Check if the internet is on or off
    • checknetdns : - Check if the internet is on or off using DNS
    • checknetdnsretry : - Check if the internet is on or off using DNS and retry every 5 seconds
    • checknetdnsretrytimeout : - Check if the internet is on or off using DNS and retry every 5 seconds with a timeout of 60 seconds
    • checknetdnsretrytimeouterr : - Check if the internet is on or off using DNS and retry every 5 seconds with a timeout of 60 seconds and an error message
    • checknetdnsretrytimeouterrex : - Check if the internet is on or off using DNS and retry every 5 seconds with a timeout of 60 seconds and an error message and exit
    • casepattern : - case statement with pattern matching
    • select : - select loop for menu-like interfaces
    • getopts : - getopts loop for processing command-line options
    • fileexist : - check if a file exists
    • direxist : - check if a directory exists
    • fileread : - check if a file is readable
    • filewrite : - check if a file is writable
    • fileexec : - check if a file is executable
    • fileowner : - check if a file is owned by the user
    • filegroup : - check if a file is owned by the group
    • fileempty : - check if a file is empty
    • filesize : - check if a file is larger than 0 bytes
    • filetype : - check the type of a file
    • fileperm : - check the permissions of a file
    • fileage : - check the age of a file
    • filecontent : - check the content of a file
    • filecontentregex : - check the content of a file with a regex
    • filecontentregexcase : - check the content of a file with a case insensitive regex
    • filecontentregexword : - check the content of a file with a whole word regex
    • filecontentregexwordcase : - check the content of a file with a whole word case insensitive regex
    • filecontentregexwordlinenum : - check the content of a file with a whole word regex and line number
    • filecontentregexwordcaselinenum : - check the content of a file with a whole word case insensitive regex and line number
    • filecontentregexwordlinenumfile : - check the content of a file with a whole word regex and line number and file name
    • filecontentregexwordcaselinenumfile : - check the content of a file with a whole word case insensitive regex and line number and file name
    • filecontentregexwordlinenumfilecount : - check the content of a file with a whole word regex and line number and file name and count
    • filecontentregexwordcaselinenumfilecount : - check the content of a file with a whole word case insensitive regex and line number and file name and count
    • filecontentregexwordlinenumfilecounterr : - check the content of a file with a whole word regex and line number and file name and count and error message
    • filecontentregexwordcaselinenumfilecounterr : - check the content of a file with a whole word case insensitive regex and line number and file name and count and error message
    • filecontentregexwordlinenumfilecounterrex : - check the content of a file with a whole word regex and line number and file name and count and error message and exit
    • filecontentregexwordcaselinenumfilecounterrex : - check the content of a file with a whole word case insensitive regex and line number and file name and count and error message and exit
    • whilecond : - while loop with a specified condition
    • break : - break statement to exit a loop or switch statement
    • continue : - continue statement to skip the rest of a loop and start the next iteration
    • sleep : - pause the script for a specified number of seconds
    • awk : - AWK one-liner for text processing
    • sed : - SED one-liner for text processing
    • tail : - display the last part of a file
    • head : - display the first part of a file
    • sort : - sort lines of text files
    • uniq : - report or filter out repeated lines in a file
    • cut : - remove sections from each line of a file
    • paste : - merge lines of files
    • awkscript : - AWK script template
    • sedscript : - SED script template
    • grepcolor : - search for a pattern in a file with color
    • greplinenum : - search for a pattern in a file with line number
    • grepword : - search for a pattern in a file as a whole word
    • grepwordlinenum : - search for a pattern in a file as a whole word with line number
    • grepwordlinenumfile : - search for a pattern in a file as a whole word with line number and file name
    • grepwordlinenumfilecount : - search for a pattern in a file as a whole word with line number and file name and count
    • grepwordlinenumfilecounterrex : - search for a pattern in a file as a whole word with line number and file name and count and error message
    • grepwordlinenumfilecounterrexexit : - search for a pattern in a file as a whole word with line number and file name and count and error message and exit
    • grepwordlinenumfilecounterrexexitcase : - search for a pattern in a file as a whole word with line number and file name and count and error message and exit and case insensitive
    • forfile : - loop through files in a directory
    • casepat : - case statement with a specific pattern
    • select : - create a select menu in a script
    • fnparam : - function with parameters and default values
    • ifempty : - if statement for checking if a variable is null or an empty string
    • untilcond : - until loop with a specified condition
    • casemulti : - case statement with multiple patterns
    • loopexec : - execute a command in a loop for each element in a collection
    • iffileexists : - if statement for checking if a file exists
    • ifdirexists : - if statement for checking if a directory exists
    • ifcommandexists : - if statement for checking if a command exists in the system
    • readfile : - read lines from a file in a loop
    • fnvarargs : - function with a variable number of arguments
    • forlineinfile : - loop through lines in a file
    • getscriptdir : - get the directory of the script
    • caseesac : - case statement with esac
    • ifinstalled : - check if a program is installed
    • ifroot : - check if a user has root privileges
    • outputtofile : - redirecting output to a file
    • outputerrorstofile : - redirecting output and errors to a file
    • ifreadable : - if statement for checking if a file is readable
    • ifwritable : - if statement for checking if a file is writable
    • ifexecutable : - if statement for checking if a file is executable
    • ifsubstring : - if statement for checking if a string contains a substring
    • ifstartswith : - if statement for checking if a string starts with a prefix
    • ifendswith : - if statement for checking if a string ends with a suffix
    • commentblock : - useful comment block
    • readvalidate : - read and validate user input

[1.0.4] - 2024-02-09

Added

  • Added the following new snippets:
    • array: Creates an array with two elements
    • forarray: Creates a loop echoing all variables in an array
    • forindex: Creates a loop echoing all indexes in a range
    • while: while loop
    • case: case statement
    • for: for loop
    • read: read input
    • param: parameter expansion
    • trap: trap statement
    • here: here document
    • herestring: here string
    • herestringdelim: here string with delimiter
    • heredocdelim: here document with delimiter
    • heredocEOF: here document with EOF
    • heredocEOFdelim: here document with EOF and delimiter
    • herestringEOF: here string with EOF
    • herestringEOFdelim: here string with EOF and delimiter
    • herestringdelim: here string with delimiter
    • export: Export a variable
    • source: Source a file
    • alias: Create an alias
    • test: Test condition
    • paramsub: Parameter expansion with substring
    • paramrep: Parameter expansion with pattern replacement
    • paramlen: Parameter expansion with length of variable
    • paramdef: Parameter expansion with default value
    • paramasg: Parameter expansion with assignment of default value
    • paramerr: Parameter expansion with error message if variable is unset or null
    • paramsuf: Parameter expansion with removal of smallest suffix pattern
    • parambig: Parameter expansion with removal of largest suffix pattern
    • parampre: Parameter expansion with removal of smallest prefix pattern
    • parambigpre: Parameter expansion with removal of largest prefix pattern
    • This release updated the format choice for function names (fn) to align with the Shell Style Guide

[1.0.0] - Release Date

Added

  • Updated the format choice for function names (fn) to align with the Shell Style Guide.
  • Added new snippets:
    • fnd: Function with definitions
    • main: Main function declaration
    • const: Creates a local readonly variable ie. a constant
    • todo: TODO comment

[0.0.2] - Release Date

Added

  • Added a logo to the extension.

[0.0.1] - Release Date

Added

  • Initial release of BashSnippets.
  • Added the following snippets:
    • shebang: Shebang
    • e: Echo
    • fn: Function
    • if: if block
    • ife: if else block
    • elif: elif block
    • until: until block

Known Issues

  • None