Saya menulis skrip bash yang menjalankan setiap argumennya sebagai perintah. Ini berfungsi untuk perintah di saya PATH
, tetapi tidak untuk alias. Saya bisa langsung memanggil alias dalam skrip, tetapi saya tidak bisa memanggil alias yang telah dilewati sebagai argumen.
Masalahnya (saya berasumsi) adalah bahwa alias diperluas sebelum variabel. Apakah ada cara untuk menjalankan alias dari suatu variabel?
Contoh skrip:
#!/bin/bash
# File: runall
shopt -s expand_aliases
source ~/.aliases
while (( "$#" )); do
$1
shift
done
runall "echo test"
bekerja, tetapi runall "myalias"
memberirunall: line 8: myalias: command not found
eval
variabel itu berbahaya ?