org-mode: 最好的文档编辑利器,没有之一

Table of Contents

1 .bash\profile和.bashrc的什么区别

etc/profile 存放一些全局(共有)变量,不管哪个用户,登录时都会读取该文件。通常设置一些Shell变量PATH,USER,HOSTNAME和HISTSIZE等 ~.bashprofile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件. ~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取. /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.

  1. /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置.
  2. /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
  3. ~/.bashprofile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
  4. ~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.
  5. ~/.bashlogout:当每次退出系统(退出bash shell)时,执行该文件.
  6. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
  7. ~/.bashprofile 是交互式、login 方式进入 bash 运行的
  8. ~/.bashrc 是交互式 non-login 方式进入 bash 运行的

通常二者设置大致相同,所以通常前者会调用后者。

1.1 上述配置文件的作用

  1. 登录Linux先启动系统配置文件/etc/profile,并从/etc/profile.d目录的配置文件中搜集shell的设置,为系统的每个用户设置环境信息。
  2. 用户配置文件~/.bash\profile,每个用户专用于自己使用的shell信息,仅用户登录时执行一次! 默认情况下,此文件通过脚本执行同目录下用户的.bashrc文件。
  3. ~/.bashrc文件包含专用于用户bash shell的bash信息,登录及每次打开新的shell时都会执行。里面又会调用/etc/bashrc

1.2 内部变量   内部变量

内部变量是Linux所提供的一种特殊类型的变量,这类变量在程序中用来作出判断。在shell程序内这类变量的值是不能修改的。

部分内部变量是:

  1. $# ——传送给shell程序的位置参数的数量
  2. $?——最后命令的完成码或者在shell程序内部执行的shell程序(返回值)
  3. $0——shell程序的名称
  4. $*——调用shell程序时所传送的全部参数的单字符串, “参数1”“参数2”…形式保存的参数
  5. $@ “参数1”“参数2”…形式保存的参数
  6. $n 第n个参数
  7. $$ 本程序的PID
  8. $! 上一个命令的PID

2 表达式

  1. -lt 小于
  2. -le 小于等于
  3. -gt 大于
  4. -ge 大于等于
  5. -eq 等于
  6. -ne 不等于
  1. sdkflk
  2. sdfkl
  3. sdflksdl

3 文件测试

  1. -f 存在且是普通文件
  2. -d 存在且是目录
  3. -s 存在且字节数大于0
  4. -r 存在且可读
  5. -w 存在且可写
  6. -x 存在且可执行

4 判断

  1. test -z s 字符串长=0,即为空串
  2. test -n 字符串长>0
  3. -a 逻辑与
  4. -o 逻辑或
  5. ! 逻辑非

5 一些命令

  1. seq命令:产生1-9的数字序列
  2. expr命令:对表达式求值
  3. []直接求值命令:对被括起来的表达式求值

6 在Linux里设置环境变量的方法(export PATH)

  1. 1、直接用export命令:

Author: Weishijian (wei.shijian@gmail.com)

Date:

Emacs 24.4.1 (Org mode 8.2.10)

Validate