次のようなスクリプトでエイリアスを作成しようとしています:
#!/bin/bash
shopt -s expand_aliases
#Currently just using 'git' to try and get it working
#It'll be replaced with the following line when it works
#compgen -c | while read x;
echo 'git' | while read x;
do
a=`echo $x | tr '[:lower:]' '[:upper:]'`;
echo $a;
echo $x;
if [ "$a" != '' ]
then
echo 'got here';
alias $a=$x;
alias;
GIT;
fi
done
簡単なテスト スクリプトが機能している間 (testme
現在のシェルのエイリアスに追加されます):
#!/bin/bash
shopt -s expand_aliases
alias testme="echo It Worked"
alias
testme
最初のスクリプトからの出力:
GIT
git
got here
alias GIT='git'
alias grep='grep --colour=auto'
alias ls='ls --color=auto'
GIT: command not found
GIT
エイリアスに表示されますが、実行できません。. ./script.sh
and で呼び出してみましたsource script.sh
。私は何を間違っていますか?