Linux Bashスクリプト:カスタム遅延コードブロック(裸データ保存スキーム)

747 ワード

aliasとreadの使い方を組み合わせると、実行を遅らせるスクリプトや、裸のデータ(文字列が拡張されていない)を変数に保存して、後で使用することができます.
$ alias BEGIN='read -d "" $1 <<"END"'

$ BEGIN block1
> ls -la
> END

$ eval $block1
total 10
drwxr-xr-x    1 Xiaoqian Administ     4096 Nov  5 22:42 ./
drwxr-xr-x   12 Xiaoqian Administ     4096 Nov  5 22:31 ../
-rw-r--r--    1 Xiaoqian Administ        3 Oct 31 16:26 .gitignore
-rw-r--r--    1 Xiaoqian Administ      435 Oct 31 16:26 README.md
drwxr-xr-x    2 Xiaoqian Administ        0 Nov  5 22:32 bin/
-rwxr-xr-x    1 Xiaoqian Administ      792 Oct 31 16:26 meditate

完成、実はblock 1は1つの裸のデータで、1つのBEGIN...ENDブロックには任意の文字テキストが含まれており、
block 1=「ls-la」ですが、ここではshellエンジンでテキストが拡張されないことを保証します.