脚本执行方式

比如我们在/root/下编写了一个脚本,名字为hello.sh。那么怎么调用执行它呢?有两种办法:

(1)直接通过bash,如下:

bash  hello.sh

注:采用bash执行脚本,不需要赋予执行权限。但是这不符合习惯,一般不推荐使用。

(2)先赋予权限,然后直接调用:

chmod   755   hello.sh

/root/hello.sh

注:上面的第一句就是为脚本赋予权限,第二句就是执行命令。一般推荐这种执行方式。

===============================================================================================================

别名

在shell中有时候命令很长,也有时候我们想用新的命令覆盖原来的命令,这个时候就会用到命令别名。下面就系统的讲一讲

这个关于别名的一些知识。

(1)查看系统中存在的别名

很简单,一个命令搞定: alias

例如我的系统中的命令别名都有如下一些:

比如ll是命令“ls  -l  --color=auto”的别名

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

(2)编辑自己的别名

也很简单,语法就是:

alias  命令别名 = ‘原命令名’

注意:是单引号。而且一般命令别名与原来命令名不一样。但是如果你想覆盖原来的命令,就可以命令成一样的。

比如,我想新增加一个命令别名,让输入命令vi的时候,实际上执行的是vim命令。就可以如下操作:

通过上面,在用alias查看系统中存在的命令别名的时候,多了vi。以后我们再调用命令vi,实际执行就是vim命令。

但是,请注意,使用alias生成的别名只是临时有效的,即系统退出后再进入就无效。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

那么怎么生成永久的别名呢?

其实也很简单,比如我们现在的位置在/root/,那么只需要编辑文件/root/.bashrc即可。

首先我们来看一下这个文件,利用vim /root/.bash.rc命令即可,如下截图:

上面就是当前系统中存在的所有命令别名,现在我们只要将自己的命令别名加入进去即可。比如如下:

可以看到,我新加了vi=’vim’这个命令别名。

然后再执行source  /root/.bashrc  命令即可立即生成,如果你不想立即生效,可以重启后生效。总之这种

添加别名的方式是永久的。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

(3)删除别名

删除别名的也很简单,如下:

unalias  命令别名

注意:这种删除方式也是临时有效的,即当前系统中这个别名失效了。如果重启后,这个别名还是有效的。原因就是

/root/.bashrc中的别名没有真正删除的(如果你在这个文件中编辑了这个别名)。你可以运行alias看一下,发现

别名已经被删除,但是运行vim /root/.bashrc发现.bashrc中的别名还存在。因此只有删除了.bashrc中的别名,

才真正删除了这个别名(当然如果你没有在.bashrc中编辑这个别名就无所谓了)

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

(4)命令生效的顺序

在命令覆盖的时候(即别名和原来的命令名相同),例如我们上例中vi=’vim’就覆盖掉了系统原来的命令vi,你肯定有疑问

为什么不会再去调用原来的命令了呢?明明都是一样的名字啊。其实这是Linux中规定的命令生效顺序。下面介绍Linux中的

命令有效的顺序。

先后顺序如下:

第一顺位执行用绝对路径或相对路径执行的命令

第二顺位执行别名

第三顺位执行Bash内部的命令

第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令

我们发现别名的执行级别还是挺高的哈。好了,关于别名的知识就讲到这里。

===============================================================================================================

快捷键

我们记住下面的常用快捷键即可,没有什么好说的。如下:

ctrl+c      强制终止当前命令

ctrl+l      清屏

ctrl+a     光标移动到命令行首

ctrl+e     光标移动到命令行尾

ctrl+u     从光标所在位置一直删除到行首

ctrl+z     把命令放入后台

ctrl+r     在历史命令中搜索

===============================================================================================

历史命令

history   [选项]    [历史命令保存文件]

选项:

-c    清空历史命令

-w    把缓存中的历史命令写入历史命令保存文件”~/.bash_history”

如果你在命令行只输入命令history,就是查看当前的所有历史命令(包括你之前登录的和当前登录的)

如果你在命令行只输入命令history  -c ,则会删除当前登录的所有历史命令。

如果你输入命令 history -w  ,就会把当前的历史命令写入~/.bash_history文件中。

注意:.bash_history这个文件只会保存之前登录的历史命令,当前登录只有退出后才会将历史命令

写入这个文件。因此使用选项 -w可以立即写入。

=======================================================================================================

自动补全

shell中自动补全只要你按下Tab键即可。如果按下去没有自动补全,说明有多种补全方式,你再按一下Tab键,就会

将多种补全方式显示出来,这样子你就可以选择适合自己的补全方式了。

最新文章

  1. BZOJ 3639: Query on a tree VII
  2. sublime Text3使用笔记
  3. 第18/24周 乐观并发控制(Optimistic Concurrency)
  4. Ajax优缺点
  5. Regional Changchun Online--Alisha’s Party
  6. JAVA_3lesson
  7. BZOJ 1007 [HNOI2008]水平可见直线
  8. 手机网页中的hover效果实现
  9. php常用的操作
  10. MEAN教程1-MongoDB安装和使用
  11. NEWS-包名-baseTest-类名-BaseDao
  12. 奇怪的道路[JXOI2012]
  13. JavaScript获取当前url路径
  14. 安装centOS后要解决的问题
  15. DBC格式解析(以文本形式打开)
  16. Win2003打开网页时总是提示添加网址到信任站点的设置方法
  17. OneZero第二周第三次站立会议(2016.3.30)
  18. go基础1:Hello world与变量声明
  19. 安卓使用WebView清除缓存
  20. 【我要学python】函数的系统学习

热门文章

  1. 手把手教你使用 VuePress 搭建个人博客
  2. laravel数据迁移
  3. LINQ-Group子句、Into子句及orderby子句
  4. 如鹏网学习笔记(十五)ASP.NET MVC核心基础笔记
  5. 程序员必备技能:代码审查 (Google牛人谈Code Review)
  6. JAVA将数字钱数转换为大写
  7. hdu 1026 Ignatius and the Princess I 搜索,输出路径
  8. Jenkins2.138配置slave节点时,启动方法只有两个选项
  9. 解决WCF跨机器调用时发生“调用方未由服务进行身份验证”的错误
  10. JDBC入门(2)--- ResultSet之滚动结果集