LinuCレベル1 102試験の例題と解説
主題1.06シェルとスクリプト
1.06.1シェル環境のカスタマイズ
LinuCレベル1 102試験の出題範囲から「1.06.1 シェル環境のカスタマイズ」についての例題を解いてみます。今回は、作業の効率化などで便利なエイリアス(alias)について解説します。
例題
「ll」と実行することで「ls -l」が実行されるように、エイリアスを設定したいです。次のうち、正しいコマンドを1つ選択してください。
- alias ll = 'ls -l'
- alias ll: 'ls -l'
- alias ll='ls -l'
- alias ll ls -l
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「3. alias ll='ls -l'」です。
bashでは、エイリアスを利用することで、コマンドに別名を設定したり、コマンドとオプションをひとまとめにして新しいコマンドとして簡単に呼び出せるようにすることができます。エイリアスの設定は「alias」コマンドを使います。
例題にあるように、「ll」と実行することで「ls -l」が実行されるようにエイリアスを設定します。まず、「ls -l」の挙動は以下(2-4行目)の通りです。また、「ll」と実行してもそのようなコマンドはないため以下(5-6行目)のようになります。
[user01@almalinux9 tmp]$ touch testfile
[user01@almalinux9 tmp]$ ls -l
total 0
-rw-r--r--. 1 user01 user01 0 Oct 17 14:32 testfile
[user01@almalinux9 tmp]$ ll
-bash: ll: command not found以下のようにaliasコマンドを実行すると、その後「ll」を実行した際に「ls -l」と同様の動きになります。
[user01@almalinux9 tmp]$ alias ll='ls -l'
[user01@almalinux9 tmp]$ ll
total 0
-rw-r--r--. 1 user01 user01 0 Oct 17 14:32 testfile「alias」とだけ実行すると、現在設定されているエイリアスの一覧が表示されます。
[user01@almalinux9 tmp]$ alias
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l'
alias lletc='ls -l'
alias llpro='ls -l'
alias ls='ls --color=auto'
alias xzegrep='xzegrep --color=auto'
alias xzfgrep='xzfgrep --color=auto'
alias xzgrep='xzgrep --color=auto'
alias zegrep='zegrep --color=auto'
alias zfgrep='zfgrep --color=auto'
alias zgrep='zgrep --color=auto'aliasを解除するには、「unalias」コマンドを使います。
先ほど設定した「ll」のエイリアスを解除するには、以下のように実行します。
[user01@almalinux9 tmp]$ unalias ll
[user01@almalinux9 tmp]$ ll
-bash: ll: command not foundaliasコマンドを用いたエイリアス設定は、
- 毎回長いコマンドを打つのが面倒なので短縮したい
- 「rm」コマンドを実行した際に、事故防止のため「-i」オプションもセットで呼び出せるようにしたい
といったケースでうまく活用できます。
ただし、aliasはあくまでも一時的な設定であるため、ターミナルを閉じると消えてしまいます。aliasを永続化するには、「~/.bashrc」ファイルに設定して反映させる必要があります。
例題の選択肢について解説します。
1. alias ll = 'ls -l'
誤りです。
「=」の前後にスペースを入れると書式不正となります。
2. alias ll:'ls -l'
誤りです。
「=」ではなく「:」となっているため書式不正となります。
3. alias ll='ls -l'
正しいです。
このコマンドを実行した後は、一時的ですが「ll」と実行することで「ls -l」を実行したときと同じ挙動になります。
4. alias ll ls -l
誤りです。
「=」ではなくスペースとなっているため書式不正となります。
今回はエイリアス(alias)について解説しました。エイリアスを活用することで、作業の効率化や安全性向上につながるので、この機会に覚えておきましょう。
例題作成者
株式会社デージーネット 経営企画室 小倉崇志