Pantek Library
Hosting Provided By
CybrHost
High Speed Hosting

Re: [OT] Using aliases or functions in bash script

From: Michelle Konzack <linux4michelle(at)freenet.de>
Date: Wed Jan 30 2008 - 17:48:21 EST


Am 2008-01-26 16:48:18, schrieb T o n g:
> Here is the full OP -- let me try for the last time:

???

> An advanced bash alias expansion question --
> How can I use my aliases or functions in my bash script?
>
> I have the following alias and function defined in my ~/.bashrc:
>
> $ alias rd
> alias rd='rmdir'
>
> $ type dt
> dt is a function
> dt ()
> {
> pushd +$1
> }
>
> How can I use them in my script?

    dt here are spome parameters

    rd ${HOME}

>
> Looking through the man pages, I think the following content is related
> to my question:
>
> Aliases are not expanded when the shell is not interactive, unless the
> expand_aliases shell option is set using shopt.
>
> [-+]O [shopt_option]
> shopt_option is one of the shell options accepted by the
> shopt builtin (see SHELL BUILTIN COMMANDS below). If
> shopt_option is present, -O sets the value of that option; +O
> unsets it. If shopt_option is not supplied, the names and
> values of the shell options accepted by shopt are printed on
> the standard output. If the invocation option is +O, the
> output is displayed in a format that may be reused as input.
>
> expand_aliases
> If set, aliases are expanded as described above under
> ALIASES. This option is enabled by default for interac-
> tive shells.
>
> And this is what I've tried:
>
> $ bash -c 'shopt -s expand_aliases; alias rd'
> bash: line 0: alias: rd: not found

----[ '~/.bashrc' ]-------------

    shopt -s expand_aliases
    alias rd=rmdir

Do you need help?X

    dt()
    {

        pushd +$1
    }


> Am I hitting a new bug or I'm doing something wrong? Please comment,
> otherwise I'm going to file a bug report.

shopt must be executed before ANY other commands in ~/.bash_login or ~/.bashrc and the function should be in ~/.bashrc since it is read by non-login-shells

Note: I do this successfuly since years...

Thanks, Greetings and nice Day

    Michelle Konzack
    Systemadministrator
    Tamay Dogan Network
    Debian GNU/Linux Consultant

-- 
Linux-User #280138 with the Linux Counter, 
http://counter.li.org/
##################### Debian GNU/Linux Consultant #####################
Michelle Konzack   Apt. 917                  ICQ #328449886
                   50, rue de Soultz         MSN LinuxMichi
0033/6/61925193    67100 Strasbourg/France   IRC #Debian (irc.icq.com)

-- To UNSUBSCRIBE, email to debian-user-REQUEST@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

Received on Fri Feb 1 07:03:44 2008
Do you need more help?X

This archive was generated by hypermail 2.1.8 : Fri Mar 07 2008 - 00:26:09 EST


Contact Us  Legal Notices  Order Services Online 
Pantek Home  Privacy Policy  IT news  Site Map  Pantek Library