linux/unix 基本概念的认识(sha-bang 、PPA)

  • PPA:Personal Package Archives : Ubuntu;

    比如为安装 emacs,需要首先添加某个PPA:

    sudo add-apt-repository ppa:cassou/emacs
    sudo apt-get update

1. Shabang

称 # 为 sharp,称 ! 为 bang

在计算机科学中,Shebang 也称为 Hashbang,是由井号(#)和感叹号构成的字符序列,且位于脚本的起始位置。

在类 Unix 操作系统中,如果一个脚本内部含有 shebang,则意味着该脚本以程序的方式运行,程序加载器(program loader)将会把该脚本除首行(shebang)外的其余行解析为解析器指令(interpret directive),经由 Shabang 指定的解析器程序被用来执行。例如,如果一个脚本名为path/to/script,且以下述代码为首行:

#!/bin/sh

Shabang 其实是告诉了程序加载器以 /bin/sh来运行此脚本,path/to/script作为其第一个参数。

  • #!/bin/sh ⇒ Bourne shell
  • #!/bin/csh -f ⇒ csh
  • #!/usr/bin/perl -T,使用 perl 执行
  • #!/usr/bin/env python,使用 Python 执行,会自动的通过 env 查找 Python 解释器;

2. make 与 make install

make,仅编译;

make install,编译并安装。比如安装到/usr/bin目录下,然后可以直接使用。因为 /usr/bin 只有管理员才能向里面添加文件,所以通常要加 sudo

Published by

风君子

独自遨游何稽首 揭天掀地慰生平