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

0