Linux笔记3

什么是命令

命令可以是下面四种形式之一:

  • 是一个可执行程序,就像我们所看到的位于目录/usr/bin 中的文件一样。 属于这一类的程序,可以编译成二进制文件,诸如用 C 和 C++语言写成的程序, 也可以是由脚本语言写成的程序,比如说 shell,perl,python,ruby...
  • 是一个内建于 shell 自身的命令。bash 支持若干命令,内部叫做 shell 内部命令 (builtins)。如,cd 命令
  • 是一个 shell 函数。这些是小规模的 shell 脚本,它们混合到环境变量中。
  • 是一个命令别名。我们可以定义自己的命令,建立在其它命令之上。

Linux命令行

type 显示命令类型

[root@senlong playground]# type type
type is a shell builtin
[root@senlong playground]# type ls
ls is aliased to 'ls --color=auto'
[root@senlong playground]# type cp
cp is aliased to 'cp -i'

which 显示一个可执行程序的位置

[me@linuxbox ~]$ which ls
/bin/ls

这个命令只对可执行程序有效,不包括内部命令和命令别名

man 显示程序帮助文档

man program

帮助文档的结构

章节

内容

1

用户命令

2

程序接口内核系统调用

3

C 库函数程序接口

4

特殊文件,比如说设备结点和驱动程序

5

文件格式

6

游戏娱乐,如屏幕保护程序

7

其他方面

8

系统管理员命令

alias 设置别名

[me@linuxbox ~]$ cd /usr; ls; cd -
bin  games    kerberos  lib64    local  share  tmp
...
[me@linuxbox ~]$

在一行上联合了三个命令:

首先更改目录到/usr,然后列出目录内容,最后回到原始目录(用命令”cd ~”),结束在开始的地方。

现在,通过 alia 命令 把这一串命令转变为一个命令。

我们要做的第一件事就是为我们的新命令构想一个名字。

比方说”test”。在使用”test”之前,先用type命令查看其是否已经在命令中:

[me@linuxbox ~]$ type test
test is a shell builtin

test”名字已经被使用了。试一下”foo”:

[me@linuxbox ~]$ type foo
bash: type: foo: not found

”foo”还没被占用。创建命令别名:

[me@linuxbox ~]$ alias foo='cd /usr; ls; cd -'

注意命令结构:

alias name='string'

在命令”alias”之后,输入“name”,紧接着(没有空格)是一个等号,等号之后是 一串用引号引起的字符串,字符串的内容要赋值给 name。我们定义了别名之后, 这个命令别名可以使用在任何地方:

[me@linuxbox ~]$ foo
bin   games   kerberos  lib64    local   share  tmp
...
[me@linuxbox ~]$

我们也可以使用 type 命令来查看我们的别名:

[me@linuxbox ~]$ type foo
foo is aliased to \`cd /usr; ls ; cd -\'

删除别名,使用 unalias 命令,像这样:

[me@linuxbox ~]$ unalias foo
[me@linuxbox ~]$ type foo
bash: type: foo: not found

查看系统中的所有别名:

[me@linuxbox ~]$ alias
alias l.='ls -d .* --color=tty'
...

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Ceph对象存储方案

Luminous版本PG 分布调优

Luminous版本开始新增的balancer模块在PG分布优化方面效果非常明显,操作也非常简便,强烈推荐各位在集群上线之前进行这一操作,能够极大的提升整个集群...

3105
来自专栏一个会写诗的程序员的博客

Spring Reactor 项目核心库Reactor Core

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactiv...

2152
来自专栏跟着阿笨一起玩NET

c#实现打印功能

2702
来自专栏pangguoming

Spring Boot集成JasperReports生成PDF文档

由于工作需要,要实现后端根据模板动态填充数据生成PDF文档,通过技术选型,使用Ireport5.6来设计模板,结合JasperReports5.6工具库来调用渲...

1.2K7
来自专栏我和未来有约会

Silverlight第三方控件专题

这里我收集整理了目前网上silverlight第三方控件的专题,若果有所遗漏请告知我一下。 名称 简介 截图 telerik 商 RadC...

4015
来自专栏魂祭心

原 canvas绘制clock

4064
来自专栏大内老A

The .NET of Tomorrow

Ed Charbeneau(http://developer.telerik.com/featured/the-net-of-tomorrow/) Exciti...

31610
来自专栏java 成神之路

使用 NIO 实现 echo 服务器

4617
来自专栏张善友的专栏

LINQ via C# 系列文章

LINQ via C# Recently I am giving a series of talk on LINQ. the name “LINQ via C...

2645
来自专栏张善友的专栏

Miguel de Icaza 细说 Mix 07大会上的Silverlight和DLR

Mono之父Miguel de Icaza 详细报道微软Mix 07大会上的Silverlight和DLR ,上面还谈到了Mono and Silverligh...

2707

扫码关注云+社区