Portál AbcLinuxu, 31. října 2025 19:31
alias mem="free -m"
Chci, aby po zadání "mem" se zobrazilo, že jde o "free -m" a následně se toto provedlo. Standardně se přiřazený příkaz nezobrazuje.
Narazil jsem na řešení typu napsat "type a jméno aliasu", ale když to napíšete pod zkratku aliasu, např:
alias mem="type mem;free -m"
ukáže vám to komplet vše i s příkazem type a pak až se příkaz provede. Chtělo by to přímo nějakým skriptem, který se zavede do bashe, aby aliasy automaticky vykonával a předtím obsah vypisoval, což nevím jak se dělá. Nebo nějaké jiné chytré řešení.
Děkuji za nápady.
            Řešení dotazu:
alias mem="echo free -m;free -m"
 29.11.2022 12:34
k3dAR             | skóre: 63
        29.11.2022 12:34
k3dAR             | skóre: 63
            
            
        
$ cat ~/.bash_aliases
sa(){ alias ${1:-dummy} 2>/dev/null | sed "s/[^;]*//;s/;[ ]*//;s/'$//"; }
alias mem="sa mem;free -m"
pripadne potrebujes to zobrazit vzdy a automaticky pred spustenim aliasu? 29.11.2022 12:41
k3dAR             | skóre: 63
        29.11.2022 12:41
k3dAR             | skóre: 63
            
            
        $ cat ~/.bash_aliases
sa(){ echo ${BASH_ALIASES[${1}]/sa ${1};}; }
alias mem="sa mem;free -m"
             27.11.2022 17:41
Jendа             | skóre: 78
             | blog: Jenda
             | JO70FB
        27.11.2022 17:41
Jendа             | skóre: 78
             | blog: Jenda
             | JO70FB
        command_not_found_handle, aliasy definovat třeba jako _xmem (aby „příkaz“ mem neexistoval) a ten handler zjistí jestli existuje „správný“ alias, vypíše ho a spustí.
            
        Tiskni
            
                Sdílej:
                 
                 
                 
                 
                 
                 
            
    
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.