Category: Bash

  • A bash builtin command named “enable” to enable or disable a bash builtin command

    [bash light=”true”] $command $echo $? 0 $enable -n command $command bash: command: command not found $echo $? 127 $enable command $command $enable -n enable $enable bash: enable: command not found $ [/bash] RELATED SOURCE CODE EXPOSURE [c light=”true”] /* Enable/disable shell commands present in LIST. If list is not specified, then print out a list […]

  • finding source code or source file of a typical bash function

    $type -a signals bash: type: signals: not found $type -a _signals _signals is a function _signals () { local -a sigs=($( compgen -P “$1” -A signal “SIG${cur#$1}” )); COMPREPLY+=(“${sigs[@]/#${1}SIG/${1}}”) } $declare -F _signals _signals $shopt -s extdebug $declare -F _signals _signals 862 /usr/share/bash-completion/bash_completion $declare -F _command _command 1732 /usr/share/bash-completion/bash_completion $declare -F compgen $declare -F _grub_dirs […]

  • caller — returns the context of any active subroutine call

    $cat test.bash!/bin/bash die() { local frame=0 while caller $frame; do ((frame++)); done echo “$*” exit 1 } f1() { die “*** an error occured ***”; } f2() { f1; } f3() { f2; } f3 $ $bash test.bash 12 f1 test.bash 13 f2 test.bash 14 f3 test.bash 16 main test.bash *** an error occured *** […]

  • Typical Bash Shell bind Command Examples

  • sort – sort lines of text files

    $cat test.txt sept aug jan dec oct apr feb mar11 mar1 $sort test.txt apr aug dec feb jan mar1 mar11 oct sept $sort -M test.txt jan feb mar1 mar11 apr aug sept oct dec $

  • fold: Wrap input lines to fit in specified width

    $cat use strict; use File::Rename (); use Pod::Usage; main() unless caller; sub main { my $options = File::Rename::Options::GetOptions or pod2usage; mod_version() if $options->{show_version}; pod2usage( -verbose => 2 ) if $options->{show_manual}; pod2usage( -exitval => 1 ) if $options->{show_help}; @ARGV = map {glob} @ARGV if $^O =~ m{Win}msx; File::Rename::rename(\@ARGV, $options); } sub mod_version { print __FILE__ […]

  • Hacking with runit and sv ( sv – control and manage services monitored by runsv(8) ) commands

    ABOUT runit runit is a cross-platform Unix init scheme with service supervision, a replacement for sysvinit, and other init schemes. It runs on GNU/Linux, *BSD, MacOSX, Solaris, and can easily be adapted to other Unix operating systems ABOUT sv The sv program reports the current status and controls the state of services monitored by the […]

  • pr – convert text files for printing

    The following shows a command line session with pr command which helps in displaying contents of a file in shell scripts. $cat lkg.txt A for Apple B for Ball C for Cat D for Donkey E for Elephant F for Fox G for Goat H for Horse I for Insect $pr -l 10 lkg.txt A […]

  • What does true and false commands do ?

    commandline session $true $true $? $echo $? 0 $false $echo $? 1 $echo $? 0 $echo $? 0 $false ; true $echo $? 0 $true ; false ; echo $? 1 $true ; false ; echo $? 1 $true ; false ; echo $? 1 $true ; false ; echo $? ; echo $? 1 […]

  • script — make typescript of terminal session

    STITCHED (C) FROM : Virtual Terminals commandline session $script Script started, file is typescript $ls Algorithms bookmark config-files firewall kernel_start.asm loader scripts animation books debian GD kernel_start.s Mail test art.text bugs-general debian-howtos jeffrin language ovlfose typescript beautifulwork cairo Docs kernel linux README web.application $ls -a . beautifulwork config-files GD kernel_start.s ovlfose web.application .. bookmark debian […]