a’set alias’ minden parancsot, majd a álparancs jól működik az interaktív shell, mivel aliasing nem működik benne a forgatókönyvben.
1. Interaktív shell
# alias ls1='ls -lrt'# ls1total 0-rw-r--r-- 1 root root 0 Oct 12 12:14 file1-rw-r--r-- 1 root root 0 Oct 12 12:14 file2
2. A
# cat script.sh#!/bin/bash# Script to check the alias outputalias ls1='ls -lrt'ls1
# chmod +x script.sh# ./script.sh ./script.sh: line 3: ls1: command not found
az álnevek nem bővülnek, ha a héj nem interaktív, kivéve, ha az expand_aliases shell opciót a shopt használatával állítják be., Tesztelhető az “alias” parancs egyszerű bash szkripthez való hozzáadásával, a szkript végrehajtása nem adja meg az alias parancsot, míg az interaktív héjban az aliasing elérhető listáját adja meg, amint az a fenti példában látható.
a Bash man oldaláról:
Aliases are not expanded when the shell is not interactive, unless the expand_aliases shell option is set using shopt (see the description of shopt under SHELL BUILTIN COMMANDS below).
Alias munka készítése bash scriptben
az alias parancsfájl készítéséhez a következő megközelítés használható., Változók lehet használni a bash script, hogy az előnyben részesített lehetőségek bármely parancs, és ezeket a változókat lehet hivatkozni a későbbi szakaszában script, hogy elegendő legyen a szükség alias belül scripts.
A szkript elején adja hozzá a “shopt-s expand_aliases” parancsot az álnevek kibontásához, az alias parancs pedig a bash szkriptben működik.
# cat script.sh#!/bin/bash# Script to check the alias outputshopt -s expand_aliasesalias ls1='ls -lrt'ls1
# chmod +x script.sh# ./script.shtotal 0-rw-r--r-- 1 root root 0 Oct 12 12:14 file1-rw-r--r-- 1 root root 0 Oct 12 12:14 file2