その他
    ホーム 技術発信 DoRuby 実行すると自分の内容を出力するシェルスクリプト

    実行すると自分の内容を出力するシェルスクリプト

    この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。

    bash 上で自分自身の内容を出力するスクリプトの作成です。 cat コマンドの応用が面白いと思ったので紹介します。

     動機

    パスワードのヒントやそこそこ頻繁に使う長めのコマンドをメモしておいてターミナル上で簡単に表示できるようにしておきたい。

    echo "Qu'est-ce que c'est?"

     cat (基本)

    テキストファイルの出力には cat コマンドを使用します。

    echo "Je suis japonais." > sample.txt
    	cat sample.txt

    試しに自分を出力するシェルスクリプト

    cat << EOF > sample.sh
    	#!/bin/bash
    	
    	cat \$0
    	
    	# Nach dem Sinn von Sein soll die Frage gestellt werden.
    	EOF
    	chmod u+x sample.sh
    	./sample.sh

     cat (応用)

    # を不要にしたり、短くしたりできないか

    例えば shebang に cat を使うとか。

    cat << EOF > .1
    	#!/bin/cat
    	
    	Veni, vidi, vici.
    	
    	γνῶθι σεαυτόν
    	
    	北 冥 有 魚 其 名 為 鯤
    	
    	EOF
    	chmod u+x .1
    	./.1

    できた。PATHを追加すればファイル名だけで表示可能。名付けて猫スクリプト