• 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

linux/unix 基本概念的认识(sha-bang 、PPA)的更多相关文章

  1. Linux(二)—— Unix&Linux 的基本概念

    Linux(二)-- Unix&Linux 的基本概念 计算机 = 主机(host)+ 终端(terminal) 主机 = 内核 + 实用工具 内核(kernel) 当计算机启动时,计算机要经 ...

  2. linux缓冲的概念fopen /open,read/write和fread/fwrite区别

    fopen /open区别 UNIX环境下的C 对二进制流文件的读写有两套班子:1) fopen,fread,fwrite ; 2) open, read, write这里简单的介绍一下他们的区别.1 ...

  3. 《Linux/Unix系统编程手册》读书笔记6

    <Linux/Unix系统编程手册>读书笔记 目录 第9章 这章主要讲了一堆关于进程的ID.实际用户(组)ID.有效用户(组)ID.保存设置用户(组)ID.文件系统用户(组)ID.和辅助组 ...

  4. 《Linux/Unix系统编程手册》读书笔记1

    <Linux/Unix系统编程手册>读书笔记 目录 最近这一个月在看<Linux/Unix系统编程手册>,在学习关于Linux的系统编程.之前学习Linux的时候就打算写关于L ...

  5. Linux/Unix工具与正则表达式的POSIX规范

    http://www.infoq.com/cn/news/2011/07/regular-expressions-6-POSIX 对正则表达式有基本了解的读者,一定不会陌生『\d』.『[a-z]+』之 ...

  6. 编写Linux/Unix守护进程

    原文: http://www.cnblogs.com/haimingwey/archive/2012/04/25/2470190.html 守护进程在Linux/Unix系统中有着广泛的应用.有时,开 ...

  7. 《Linux/Unix系统编程手册》 时间子系统

    Linux下操作系统编程有两本经典APUE即<Advanced Programming in the UNIX Environment>和TLPI<The Linux Program ...

  8. 《Linux/UNIX系统编程手册》第56章 SOCKET:介绍

    关键词: 1. socket基础 一个典型的客户端/服务器场景中,应用程序使用socket进行通信的方式如下: 各个应用程序创建一个socket.socket是一个允许通信的设备,两个应用程序都需要用 ...

  9. Linux/Unix 线程同步技术之互斥量(1)

    众所周知,互斥量(mutex)是同步线程对共享资源访问的技术,用来防止下面这种情况:线程A试图访问某个共享资源时,线程B正在对其进行修改,从而造成资源状态不一致.与之相关的一个术语临界区(critic ...

随机推荐

  1. Android 五大存储方式具体解释

    SharedPreferences与Editor SharedPreferences保存的数据仅仅要是类似于配置信息格式的数据.因此它保存的数据主要是简单的key-value对形式.以下关系图 上图全 ...

  2. Mac系统下安装ant

    看了一些别人怎么在mac下安装ant,大体都是从官网下载bin文件,然后改动权限,建链接.配path. 须要这么麻烦吗?我认为不须要. 以下一个命令搞定: forlong401:build forlo ...

  3. iOS 7 UI 过渡指南 - 支持续 iOS 6(iOS 7 UI Transition Guide - Supporting iOS 6)

    iOS 7 UI Transition Guide Preparing for Transition Before You Start Scoping the Project Supporting i ...

  4. vue11 vue实例方法

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 用Struts2搭建一个登录例子【本人亲测好用】

    今天尝试struts2的搭建,遇到不少的问题,终于一一解决,逛了很多地方,最终完成搭建 1.首先要下载struts2的一些组件,我下载的是版本2.3.4.1,Eclipse是4.6版本的.由于版本的不 ...

  6. vue 实现文本域还剩多少字符

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. js 判断对touch事件支持

    $.support = (function() { var support = { touch: !!(('ontouchstart' in window) || window.DocumentTou ...

  8. Codefroces432 div2 A,B,C

    A. Arpa and a research in Mexican wave Arpa is researching the Mexican wave. There are n spectators ...

  9. 二进制部署mysql5.6

    二进制部署不用编译直接配置环境,初始化就可以使用了下面是官网给的方法: MySQL 二进制安装解决依赖yum install libaio shell> yum search libaio # ...

  10. 【TC SRM 718 DIV 2 B】Reconstruct Graph

    [Link]: [Description] 给你两个括号序列; 让你把这两个括号序列合并起来 (得按顺序合并) 使得组成的新的序列为合法序列; 即每个括号都能匹配; 问有多少种合并的方法; [Solu ...