命令入门

命令入门

学习linux在接下来的日子里,命令行将会与我们厮守终生。使用命令行是必要的,当一个人控制超过50台服务器,每台服务器都要干同样的事情,再使用图形界面操作就会特别浪费时间,我们怎么让服务器都执行同样的命令,当然需要一些批量执行命令的工具,执行命令那么我们就要了解命令的运行原理和组合方式。为什么一定要是命令,命令可以组成脚本,可以一次运行一组命令,完成一个复杂动作。

心怀天下了,接下来就要脚踏实地了,linux有一则哲学——组合小命令完成大作业。命令是什么,命令就是小程序,程序是什么,接下来听我娓娓道来。

1程序与进程

程序就是一条条指令组成的集合,它们只会安静的躺在硬盘里,不增不减。它们设计出来就是为了解决特定的问题,我们的任务就是了解它们的功能,成为一个问题和命令的结构洞。

程序自己只会安静的躺在硬盘里是不符合我们需求的,我们程序接受我输入的数据并可以回复给我们需要的数据。怎么让它们跑起来,把它们打包成程序塞到cpu中,让cpu执行,执行完就被cpu扔出来,这个包被称为进程。它的运行原理比较复杂,尔等退下,我自己懂就好。但是它的特性就体现出来了:有生命周期,随时可以调用。

等等调用,什么是调用,怎么调用。

2shell类型

我们用什么调用这些命令。Linux发展了这么长时间,调用命令的接口换了一个又一个,这个接口我们统称shell,目前我们使用的centos中集成的shell就有很多。

在shell中执行如下命令,就可以查看本机内嵌的shell:

# cat/etc/shells

/bin/sh

/bin/bash

/sbin/nologin

/usr/bin/sh

/usr/bin/bash

/usr/sbin/nologin

/bin/tcsh

/bin/csh

切换shell,执行对应shell的路径就可以。比如切换使用sh

# /bin/sh

sh-4.2#

3命令调用

既然我们想调用命令,那么命令在哪里,有些东西我们要把它放到还珠格格目录下,不让别人看。在linux我们怎么处理的,比如不同的用户具有不同的权限,可以使用不同的命令。

Linux发现命令是通过$PATH中定义变量来控制的,并且用:分离多个路径:

查看当前用户调用命令查询路径的顺序:

echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

Linux调用一个命令的流程:首先,shell查询shell内嵌的命令;查询不到就查询$PATH中第一个冒号前面的路径/usr/local/sbin,查询其中是否有这个命令,有这个命令就执行,没有接着查询;以此类推。

等等什么是内部命令。

4命令

怎么查看命令是shell内嵌的命令或者是外部的命令,这里测试pwd命令:

#type pwd

pwd is ashell builtin

知道我们执行的命令的类型那我们执行的命令在哪里,这里我们还是用pwd演示。

#witch pwd

/usr/bin/pwd

使用whereis查询命令和帮助信息的位置。

#whereis pwd

pwd:/usr/bin/pwd /usr/include/pwd.h /usr/share/man/man1/pwd.1.gz/usr/share/man/man1p/pwd.1p.gz

一个命令的格式是什么样的

命令 选项 参数

以ls 为例

Ls -l /etc

第一个空格前是命令;-l是ls的一个选项,以详细格式显示;/etc需要操作的文件的路径。

5命令帮助

命令如此之多,我们不能把所有命令的全部的使用方法都记住吧!嗯,对得全都要记住。别扯了,汉字词语的我们也只掌握了10%但是我们已经足够使用了,并且还有小字典和大字典。当然linux的命令也不用全部都记住,Linux中也有字典,既然想偷懒熟练使用这些字典那就是必须的了。

先说小字典,help。

先说内部命令使用一下命令:

Help cd

外部命令,基本上每个命令都会带一个小字典,这里我们用ls命令做示例:

#ls --help

Usage: ls[OPTION]... [FILE]...

Listinformation about the FILEs (the current directory by default).

Sortentries alphabetically if none of -cftuvSUX nor --sort is specified.

Mandatoryarguments to long options are mandatory for short options too.

-a, --all                  do not ignore entriesstarting with .

-A, --almost-all           do not list implied . and ..

--author               with -l, print the author ofeach file

-b, --escape               print C-style escapes fornongraphic characters

等等说好的小字典呢!这的确是小字典,

还有一个大字典,man。man1到man8分门别类的存放了命令的使用方法,还有配置文件的使用方法。

#man ls

LS(1)   User Commands   LS(1)

NAME

ls- list directory contents

SYNOPSIS

ls [OPTION]... [FILE]...

DESCRIPTION

List information  about the FILEs (thecurrent directory by default).

Sort entries alphabetically if none of-cftuvSUX nor --sort is  speci‐fied.

Mandatory  arguments to  long options are mandatory forshort optionstoo.

-a, --all   do not ignore entries starting with .

-A, --almost-all  do not list implied . and ..

--author   with -l, print the author of each file

-b, --escape

Manual page ls(1) line 1 (press h for help orq to quit)

Man的格式

Man

NAME:名称及功能性说明

SYNOPSIS:语法格式,用法说明,包括可用的选项

[]:可选内容;

<>:必须提供的内容;

a|b|c:多选一;

...:同类内容可出现多个;

{ } : 分组

DESCRIPTION:命令功能的详尽说明,可能包含每个选项的意义

OPTIONS:选项,说明每一个选项的意义

FILES:此命令相关的配置文件

EXAMPLES:使用示例

AUTHOR:作者

BUGS: 报告程序bug的方式

SEEALSO: 参考

怎么使用字典。

u:向上翻半屏

d:向下翻半屏

空格:向下翻一屏

b:向下翻一屏

向上向下箭头

/keyword自上而下的查找

?keyword 自下而上的查找

查找时

按n同方向查找

按N反方向查找

g首部

G尾部

q退出

总结

总结一下,通过shell调用命令,命令有自己独特的格式和用法,格式和用法可以通过help和man查看。如果还不行,去google或者百度,实在是不行可以先看官方文档,然后看发行版文档。

时间: 2024-10-25 16:38:37

命令入门的相关文章

1.环境搭建与命令入门

1.环境搭建 参考书上的搭建步骤在VirtualBox下搭建了Cent OS 6.5环境.书上已经说的很清楚,不再赘述. 2.命令入门 2.1 语系的支持 输入命令后如果结果显示乱码,可以使用echo $LANG 显示当前的语系.注意Linux下任何时候都对文字大小写敏感.LANG=en_US此命令可以修改当前的显示语系. 2.2 bc计算器下设置小数点 默认Linux下的bc计算器运算时是显示的整数,如果想要显示小数则要输入scale=3这里的3表示是保留小数点后3位小数. 3.几个重要的按键

Linux常用命令-入门篇(一)

1    For循环 语法:begin for i in reverse 1..10 loop insert into users values(i,'奥巴马'): end loop: end; 注意:循环变量 i 是隐含增加的,所以无法看到 2    goto语句 goto 语句用于跳转到特定的位置去执行语句.由于goto语句会减少程序的可读性,所以一般情况下 不建议使用goto语句 3    null语句 null语句不会执行任何操作,但是可以增加程序的可读性 4    创建返回值是一个结果

【MongoDB数据库】MongoDB 命令入门初探

MongoDB是一款NoSql数据库,使用了"面向集合"(Collection-Oriented)原理,意思是数据被分组存储在数据集中,被称为一个集合(Collection).每个集合(Collection)在数据库中都有一个唯一的标识名,并且可以包含无限数目的对象(BasicDBObject). 集合(Collection)的概念类似关系型数据库(RDBMS)里的表(table),对象(BasicDBObject)的概念类似于RDBMS中表的一条数据,关系数据库里插入一条数据等价于在

Python入门--Linux命令入门

Linux命令入门 pwd               显示当前目录 cd                  切换目录  如:cd /   切换到根目录 cd ..               切换到上级目录 ls                   显示当前目录下的所有文件和文件夹 ls -l                列出当前目录下的文件及文件夹的详细信息 ls -a               显示当前目录下所有文件及文件夹(包括隐藏文件) vi .test           创建一

cmd 与 bash 基础命令入门

身为一个程序员会用命令行来进行一些简单的操作,不是显得很装逼嘛!?嘿嘿~ ヾ(>?<) cmd 与 bash 基础命令入门 ??????简介 ??????CMD 基础命令 ????????????目录操作 ??????????????????切换目录 ??????????????????列出文件与子目录 ??????????????????创建目录 ??????????????????删除目录 ??????????????????复制目录 ??????????????????移动目录 ????

20165301 预备作业三:Linux安装及命令入门

预备作业三:Linux安装及命令入门 VirtualBox虚拟机的安装 在进行安装之前,原本以为有了娄老师的安装教程会是一件很容易的事情.万万没想到,在自己实际动手操作中,还是遇到了许多困难.通过与同学进行讨论和搜索百度引擎,最终顺利解决了大部分问题.(以下所有问题仅针对于win10系统) 首先遇到的问题是我新建虚拟机时,只能选择32位,而没有64位 百度后发现要在安装虚拟机前要检查电脑是否虚拟化 打开任务管理器-性能-CPU 如未虚拟化,需进行设置. 重启电脑按del进入电脑的BIOS界面,并

20165223 Linux安装及命令入门

预备作业3:Linux安装及命令入门 一.VirtualBox和Ubuntu的安装 通过学习实践基于VirtualBox虚拟机安装Ubuntu图文教程,我开始学习虚拟机的安装,根据教程一步步试着安装. 安装VirtualBox 我先点击进入了VirtualBox官网,却只看到了5.2.6和5.1.32两个版本,于是先试着把5.2.6下了下来,想试试看能不能正常安装.然而事情并不尽如人意,安装过程中还是遇到了一些小障碍. 在官网安装的时候下载速度特别慢 在官网中按教程下载的5.2.6版本却在官网中

git命令入门

http://www.cocoachina.com/ios/20160629/16855.html 译者序:这是一篇给像我这样的新手或者是熟悉图形工具的老鸟看的.仅作为快速入门的教程. git 现在的火爆程度非同一般,它被广泛地用在大型开源项目,团队开发,以及独立开发者,甚至学生之中. 初学者非常容易被各种命令.参数吓哭.但实际上刚上手你并不需要了解所有命令的用途.你可以从掌握一些简单,强大的命令开始,逐步去学习.(这就是这篇文章要讲的).好了,上来! 基本了解 git命令是一些命令行工具的集合

Linux命令入门杂谈

Linux学习任重道远,对于初学者来说,看到多如繁星的命令,就让人望而却步,接下来就说说Linux命令的一些入门学习,希望我可以给看到的人帮助.我认为学习Linux命令分为下面三个方面,命令的格式.分类以及执行过程,最后重要的是,自己学会如何学习使用一个刚了解的命令.一:命令的格式:格式:命令 选项(长选项 短选项) 参数(例如 文件名 路径 用户等等)例如:(1.多个选项或多个参数用一个空格的空白字符隔开 [[email protected] ~]# ls -a -l /hometotal 4