自动补全 tab 键 当含有多个相同字母的命令式 ,按两下tab显示所有的命令,类似于help
Alias 别名 = ‘原命令’;
Alias 仅在当前登录的操作有效
若要永久生效:
<1>.若要每次登入就自动生效别名,则把别名加在/etc/profile或~/.bashrc
中。然后# source ~/.bashrc
<2>.若要让每一位用户都生效别名,则把别名加在/etc/bashrc最后面,然
后# source /etc/bashrc
删除别名:unalias 别名
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取.
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是\”父子\”关系.
~/.bash_profile 是交互式、login 方式进入 bash 运行的
~/.bashrc 是交互式 non-login 方式进入 bash 运行的
通常二者设置大致相同,所以通常前者会调用后者。
执行顺序为:/etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout
判断上条命令执行真假 echo $? 为0意味正确,非0的正数是错(一般是正数)
管道:命令一的输出作为命令二的输入
&& 逻辑与 ||逻辑或
Tee 把中间过程保存到某个文件中时,使用tee, 例如:
[root@www ~]# last | tee last.list | cut -d ” ” -f1
这个范例可以让我们将 last 的输出存一份到 last.list 文件中;
Echo 输出命令 -e :支持反斜线控制的字符转换
Shell 脚本
原因:使用脚本编程语言的好处是,它们多半运行在比编译型语言还高的层级,能够轻易处理文件与目录之类的对象。缺点是:它们的效率通常不如编译型语言。
脚本基本要素:
1. #!/bin/bash 必须的,指出shell的类型
2. # 代表注释
3. 变量
4. 控制
Shell运行 :
方法1: #sh./datawho.sh
方法2:# chmod +x datewho.sh 赋予x权限 ./datewho.sh 运行
变量: 本地变量(用户变量) 环境变量 内部变量
变量的定义:Var=’zhangsan’
变量的声明和使用:
1. 变量是弱类型的(不用声明类型)
2. 变量声明及赋值格式
变量=值(等号两边不能有空格)
3. 变量的引用
变量名变量名{变量名} 变量名为1个字符时建议使用方式一,多余一个字符时建议使用方式二
举例:aa{abc}
Echo 显示输出: 语法: echo [-ne] [字符串] / echo [–help][–version]
补充说明:echo会将输入的字符串送往标准输出。输出的字符串
间以空白字符隔开, 并在最后加上换行号。
参 数:
-n 不要在最后自动换行
-e 打开反斜杠ESC转义。若字符串中出现以下字符,则特别加以
处理,而不会将它当成一般文字输出:
\t 插入tab;
\ 插入\字符;
-help 显示帮助
-version 显示版本信息
清除变量: unset 变量名 举例:echo nameunsetname(注意:name前没有nameunsetname(注意:name前没有)
设置环境变量 variable-name=value export variable-name(环境变量名大写)
显示环境变量 env 可以看到所有的环境变量 echo $环境变量名 (显示一个变量)
清除环境变量 unset 环境变量名
内部变量是Linux所提供的一种特殊类型的变量,这类变量在程序中用来作出判断。在shell程序内这类变量的值是不能修改的。
部分内部变量是:
Shell中的特殊符号:
1、注释符# 除了#!/bin/bash里的#特殊
2、美元符 变量符。与反斜杠转义符相反,使其后的普通字符作为变量名。变量字符长度超过1个时,用{}括起来
3、单引号 被引起的字符全部做普通字符,即全部原样echo ‘my SHELL′4、双引号引号内的内容,除SHELL′4、双引号引号内的内容,除、转义符\、倒引号`这三个保留特殊功能,其他字符均做普通字符。
5、倒引号(数字1键旁边的那个键) 引号内的字符串当做shell命令行解释执行,得到的结果取代整个倒引号括起来的部分
6. 反斜线 反斜线是转义字符,它能把特殊字符变成普通字符。在某个字符前面利用反斜杠(\)能够阻止shell把后面的字符解释为特殊字符。
注意:在单引号括起来的字符串中,反斜线也成为普通字符,而失去转义字符功能。