Meer
Een Bash alias maken die een parameter neemt?
Vroeger gebruikte ik CShell ([tag:csh]), waarmee je een alias kunt maken die een parameter neemt. De notatie was zoiets als
alias junk="mv \\!* ~/.Trash"
In Bash lijkt dit niet te werken. Gezien het feit dat Bash een veelheid aan nuttige functies heeft, zou ik aannemen dat deze is geïmplementeerd, maar ik vraag me af hoe.
1155
3
Bash alias accepteert niet direct parameters. U zult een functie moeten maken.
alias
accepteert geen parameters, maar een functie kan net als een alias worden aangeroepen. Bijvoorbeeld:Overigens, Bash functies gedefinieerd in uw
.bashrc
en andere bestanden zijn beschikbaar als commando's binnen uw shell. Dus je kunt bijvoorbeeld de vorige functie als volgt aanroepenAls je het antwoord hierboven verfijnt, kun je 1-regelige syntaxis krijgen zoals je kunt voor aliassen, wat handiger is voor ad-hoc definities in een shell of .bashrc bestanden:
Vergeet de puntkomma niet voor het rechter haakje. Evenzo, voor de eigenlijke vraag:
Of:
Hier's zijn drie voorbeelden van functies die ik in mijn
~/.bashrc
heb, die in essentie aliassen zijn die een parameter accepteren:.