Marcado como: bash Ativar/desativar aninhamento de comentários | Atalhos do Teclado

  • Fm4lloc 1:17 am em 27 de July de 2018 Link Permanente | Resposta
    Tags: automate, bash, , mini, minideb, minimalist, , , , ,   

    Minideb – Debian Minimalista com openbox 

    Minideb

    Este é um pequeno projeto que escrevi para automatizar a pós-instalação do Debian, implementando um sistema limpo e minimalista com o Openbox;

    Atualmente testado no Debian 9.5, mas com atualizações para futuras versões do sistema.

    Para usar o script você deve instalar uma versão limpa do Debian, preferencialmente usando uma .iso netinstall, além disso, deve dispensar a instalação de sofwatres pré-definidos, como o caso de qualquer ambiente de Área de Trabalho. A única coisa que você deve instalar, opcionalmente, é os “utilitários de sistema padrão” se quiser um sistema menos cru.

    Modo de usar

    Antes de iniciar os trabalhos adicione o seu usuário ao grupo sudo seguindo as linhas abaixo, lembrando de substituir a palavra YOUR_USER pelo nome do utilizador do sistema.

    # su
    # apt-get install sudo
    # aduser YOUR_USER sudo
    # halt --r now
    

    Depois de adicionar o seu usuário ao grupo reinicie o sistema execute os seguintes comados:

    $ cd ~
    $ sudo apt-get install git
    $ git clone https://github.com/fm4lloc/minideb
    $ cd minideb
    $ chmod +x ./install.sh
    $ ./install -i
    

    As configurações do openbox ainda contam com os seguintes atalhos de teclado:

    Esses atalhos podem ser modificados no arquivo /openbox/rc.xml

    Keyboard Shortcut Descrição
    Alt+F Abre o gerenciador de arquivos thunar
    Alt+E Abre o terminal Sakura
    Alt+2 Abre o lançador de aplicativos gmrun
    PrintScreen Tira foto da tela usando o scrot

    Links:
    ______
    https://github.com/fm4lloc/minideb

     
  • Fm4lloc 10:32 pm em 20 de July de 2018 Link Permanente | Resposta
    Tags: autocomplete, bash, deb, , dica, howto, , , terminal, , ubuntu   

    Habilitar o Autocomplete do Bash 

    Olá, caros leitores!

    Essa é mais uma dica rápida ensinando como habilitar o autocomplete no terminal, aquele usando a tecla [tab].

    O primeiro passo é reinstalar o pacote bash-completion, para o caso de não existir ou você ter estragado alguma coisa, depois copiar o arquivo /etc/bash.bashrc para home nomeando-o direto para .bashrc

    $ sudo apt-get install --reinstall bash-completion
    $ cp /etc/bash.bashrc ~/.bashrc
    

    Após isso, abra o arquivo ~/.bashrc recém copiado com seu editor de textos favorito e encontre o trecho de código correspondente ao abaixo. Descomente as linhas removendo o caractere # (hashtag), só não faça isso para o comentário explicando o que aquilo faz.

    # enable bash completion in interactive shells
    #if ! shopt -oq posix; then
    #  if [ -f /usr/share/bash-completion/bash_completion ]; then
    #    . /usr/share/bash-completion/bash_completion
    #  elif [ -f /etc/bash_completion ]; then
    #    . /etc/bash_completion
    #  fi
    #fi
    

    O Resultado fica assim:

    # enable bash completion in interactive shells
    if ! shopt -oq posix; then
      if [ -f /usr/share/bash-completion/bash_completion ]; then
        . /usr/share/bash-completion/bash_completion
      elif [ -f /etc/bash_completion ]; then
        . /etc/bash_completion
      fi
    fi

    Agora salve o arquivo. O autocomplete já estará funcionando.

     
  • Fm4lloc 1:08 am em 21 de December de 2013 Link Permanente | Resposta
    Tags: , backup, bash, calendário, , contatos, despertador, e-mail, sh, sms   

    Script: Fast Backup Android – backup de mensagens sms, contatos, calendário, despertador e e-mails 

    Escrevi esse script para automatizar o backup de dados considerados importantes no meu Android e exercitar um pouco de shellscript.

    Para tudo funcionar corretamente será necessário alterar a linha sequente com localização do adb (Android Debug Bridge).

    declare -r ADB_BIN="/usr/local/bin/adb"
    

    Para obter mais informações execute o script acompanhado do parâmetro -h ou –help.

    #!/bin/bash
     
    #  Automates the backup process android.
    #
    #  Written by: Fernando Magalhães (fm4lloc) <fm4lloc@gmail.com>
    #
    #  This program is free software; you can redistribute it and/or modify
    #  it under the terms of the GNU General Public License as published by
    #  the Free Software Foundation; either version 3 of the License, or
    #  (at your option) any later version.
    #  
     
    declare -r NAME="Fast Backup Android"
    declare -r VERSION="0.12.4"
     
    #  [SETTINGS] - full path to the binary: adb
    #
    declare -r ADB_BIN="/usr/local/bin/adb"
     
    #  [SETTINGS] - add the path of files or folders to backup.
    #
    #  ATTENTION! remove the bar (/) end.
    #  change this  : /a/b/c/
    #  for this     : /a/b/c
    #
    declare -r PATH_FILES=(
        "/data/data/com.android.providers.contacts/databases/contacts2.db"
        "/data/data/com.android.providers.telephony/databases/mmssms.db"
        "/data/data/com.android.providers.settings/databases/settings.db"
        "/data/data/com.android.providers.calendar/databases/calendar.db"
        "/data/data/com.android.deskclock/databases/alarms.db"
        "/data/data/com.android.email/databases"
        "/data/data/com.android.settings"
    )
     
    function help()
    {
        version
        echo -e \
        "\n  -b [<local>] | --backup [<local>]  - create backup."\
        "\n                                    "\
        "A folder will be created automatically if none is specified."\
        "\n  -r <local> | --restore <local>     - restore backup."\
        "\n  -h | --help                        - show this help message."\
        "\n  -v | --version                     - show version num."
    }
     
    function version()
    {
        echo "${NAME} version ${VERSION}"
    }
     
    function create_dir()
    {
        if [ "$1" == "" ]; then
            local -r dir_name="bkp-`date +%Y%m%d-%I%M%S`"
        else
            local -r dir_name="$1"
        fi
     
        if [ -d "$dir_name" ]; then
            echo "Error: $dir_name already exists. Run $0 again."
            exit -1
        else
            mkdir -v "$dir_name"
        fi
     
        backup_data
    }
     
    function backup_data()
    {
        echo "Started..."
        for (( i = 0 ; i < ${#PATH_FILES[@]} ; i++ )) do
            mkdir -p `expr "${dir_name}${PATH_FILES[$i]}" : '\(.*\/\)'`
            $ADB_BIN pull "${PATH_FILES[$i]}" "${dir_name}${PATH_FILES[$i]}"
        done
        echo "Finished!"
    }
     
    function check_restore()
    {
        local -r dir_restore=`echo "$1" | sed -e 's/\/$//g'`
        if [ -d "$dir_restore" ]
        then
            echo "Proceed with the restore? [N/y]"
            read -n 1 -r
            if [[ $REPLY =~ ^[Yy]$ ]]; then
                restore_data
            else
                exit -1
            fi
        else
            echo "Error: \"$dir_restore\" does not exists. :-("
            exit -1
        fi
    }
     
    function restore_data()
    {
        echo "Restoring..."
        for (( i = 0 ; i < ${#PATH_FILES[@]} ; i++ )) do
            $ADB_BIN push "${dir_restore}${PATH_FILES[$i]}" "${PATH_FILES[$i]}"
        done
        echo "Finished"
     
        echo "sync..."
        $ADB_BIN shell sync
        echo "reboot device..."
        $ADB_BIN shell reboot
        echo "Finished!"
    }
     
    # MAIN
        case $1 in
    -b | --backup)
        create_dir "$2"
        exit 0
        ;;
    -r | --restore)
        check_restore "$2"
        exit 0
        ;;
    -h | --help)
        help
        exit 0
        ;;
    -v | --version)
        version
        exit 0
        ;;
    *)
        echo -e "Try $0 -h' or $0 --help' for more information."
        exit 0
        ;;
    esac
    
     
c
escrever novo post
j
post seguinte/ comentário seguinte
k
post anterior/comentário anterior
r
Resposta
e
Editar
o
mostrar/esconder comentários
t
voltar ao topo
l
vá para login
h
mostrar/ocultar ajuda
shift + esc
Cancelar