Linux学习----基础篇(shell、命令及vi使用)

1、shell

1.1、简介

shell的本意是“壳”的意思,是围绕在Linux内核之外的一个“壳”程序,用户在操作系统上完成的所有任务都是通过shell与Linux系统内核的交互来实现的。

Linux下除了默认的Bourne again shell(bash),还有很多其他的shell,例如C shell(csh)、Korn shell(ksh)、Bourne shell(sh)和Tenex C shell(tcsh)等。每个版本的shell功能基本相同,现在的Linux系统发行版一般都以bash作为默认的shell。

为了加快命令的运行,同时更有效地定制shell程序,shell中定义了一些内置的命令,一般我们把shell自身解释执行的命令称为内置命令,例如cd、pwd、exit和echo等命令,都是属于bash的内置命令。

除了内置命令,Linux系统上还有很多可执行文件,这些可执行文件也可以作为shell命令来执行。其实Linux上很多命令都不是shell的内置命令,例如ls就是一个可执行文件,存放在/bin/ls中。这些命令与shell内置命令不同,只有当它们被调用时,才由系统装入内存执行。

shell执行命令解释的具体过程为:用户在命令行输入命令提交后,shell程序首先检测是否为内置命令,如果是,就通过shell内部的解释器将命令解释为系统调用,然后提交给内核执行;如果不是shell内置的命令,那么shell会按照用户给出的路径或者根据系统环境变量的配置信息在硬盘寻找对应的命令,然后将其调入内存,最后再将其解释为系统调用,提交给内核执行。

1.2、shell基本语法

1.2.1、shell命令一般格式

用户登录系统后,shell命令行启动。shell遵循一定的语法格式将用户输入的命令进行分析解释并传递给系统内核。shell命令的一般格式为:

command [options] [arguments]

# -- command:命令的名称
# -- options:命令的选项
# -- arguments:命令的参数

# 在命令行中,选项是包含一个或多个字母的代码,主要用于改变命令的执行方式,一般在选项前有一个“-”用于区别参数

根据习惯,我们一般把具有以上格式的字符串称为命令行。命令行是用户与shell之间对话的基本单位。

1.2.2、shell中的通配符

通配符主要是为了方便用户对文件或者目录的描述,例如用户仅仅需要以“.sh”结尾的文件时,使用通配符就能很方便地实现。各个版本的shell都有通配符,这些通配符是一些特殊的字符,用户可以在命令行的参数中使用这些字符,进行文件名或者路径名的匹配。

  • “*”:匹配任意一个或多个字符
  • “?”:匹配任意单一字符
  • “[]”:匹配任何包含在方括号内的单字符

例如:

[[email protected] ~]# ls *.sh
# 匹配以.sh结尾的文件

[[email protected] ~]# ls ?.sh
# 匹配文件名只有一个字符的.sh文件

[[email protected] ~]# ls [xyz].sh
# 匹配文件名为x.sh或y.sh或z.sh的文件

原文地址:https://www.cnblogs.com/yu2006070/p/9243328.html

时间: 2024-08-24 21:19:52

Linux学习----基础篇(shell、命令及vi使用)的相关文章

Linux学习——基础篇

学习Linux之前,需要首先了解计算机的基础知识.1.二进制.十进制相互转换.156转换为二进制的方法:逐一减去2的次幂方法.(需要自己提前记住:`27=128:26=64;25=32;24=16;23=8;22=4;21=2;2`0=1 )``` 156-128是否够减,如果够,则二进制数值为:128+....156-128剩余28,28-32不够,28-16够减,剩余12.则二进制数为:128+16+...12可以拆分为:8+4那么156转换为二进制数为:128+16+8+4.二进制为2`7

Linux之基础bash shell命令

linux系统构成 linux内核主要负责 系统内存管理 软件程序管理 硬件设备管理 文件系统管理 GNU工具 执行一些标准功能,比如控制文件和程序.又分为核心工具和shell. 大部分Linux发行版的默认shell都是GNU bash shell. 浏览文件目录 常见的linux目录名称: 虚拟的根目录:/  二进制目录:/bin root用户的主目录: /root -等等 遍历目录:cd destination 后面的参数可以使用绝对文件路径,也可以使用相对文件路径 绝对路径输入 输入:

Linux学习——————基础篇

一.linux试用 1.使用man或者info查询 2.超级简单的文本编辑器:nano 3.sync:数据同步写入磁盘,将内存中的数据写入磁盘 3.惯用的关机命令:shutdown /sbin/shutdown[-t秒] [-arkhncfF] 时间[警告信息]    普通用户shutdown需要root权限 二.文件权限 以root身份登录linux,执行ls -al 会出现一大堆东西 第一列代表文件的类型与权限 第一个字符代表这个文件是目录,文件或者链接文件 d为目录 -为文件 l链接文件

linux学习基础篇01--硬件基础

最近看马哥的linux运维视频,虽然我是我做软件测试的,但是最近也对运维方面的东西很感兴趣,因为以前总是写写测试框架代码,谢谢自动化测试代码.发现自己懂得东西很少.我的目标是成为一个测试架构师,可是只是会写写代码的话,永远也达不到这个目标.测试架构师需要在各个计算机领域都有一定深度的了解.所以前一段时间学习mysql调优后,现在开始看马哥的linux视频.学习一下运维的知识.这里有一个很诧异的地方就是,运维需要会的东西是很多的,而且要很深.为什么国内运维人员的工资缺普遍还不如我们测试呢.这是个问

Linux学习笔记(三)-Shell命令机制

切换命令行:ctrl+alt+f1-f6 切换到图形界面:ctrl+alt+f7 ls-list(win下的dir) 白色:普通文件 蓝色:目录文件 绿色:可执行文件 执行步骤: 输入ls 在相关目录下去找命令程序(path,环境变量:/etc/environment),whereis+命令:查找该命令的可执行文件的位置 基于shell的基本类库Bash 底层的交互 GNU,FSF,Bash,Coreutils 来自为知笔记(Wiz)

Linux基础知识——shell命令类型及命令使用帮助

加入马帮有一段时间了,看到群里面大总管要检查博客,才意识到,原来我还没有写过作业.俗话说的好,时间是把杀猪刀!!!咳咳,其实想说,马哥视频忒长,内容贼多,对于文笔不好我来说,写作业压力山大啊,有木有.嗯.嗯,长话短说,进入正题. 两个星期过去,课程进度有点掉队,这篇博文主要记录基础命令课程知识,用于梳理知识点并加深印象,为今后行走linux之路打下坚实基础的好开端,完成该博文并回顾相关知识点后,期望加快学习步伐,稳扎稳打,跟上进度,good good study,day day up! 1.  

Linux学习闲谈(一)——Shell基本操作与命令

Linux学习闲谈(一) --Shell基本操作与命令 (转载请附上本文链接--linhxx) 1.#!/bin/sh 放在程序开头,表示用/bin/sh方式来解析. 2.变量 1)变量赋值 varname='xxx',除了在变量赋值和在FOR循环语句头中,其他情况下BASH 中的变量使用必须在变量前加"$"符号,即采用 $varname使用变量.更为标准的变量引用方式是 ${STR} 这样的,$STR 自不过是对 ${STR} 的一种简化.在复杂情况下(即有可能产生歧义的地方)最好用

Python学习基础篇第一篇——快速入门(适合初学者)

一.Python学习基础篇第一篇--(快速入门) 建议从Python2.7开始学习,Python2.7可以支持扩展大量的第三方类库,是目前比较成熟的版本 编写代码的软件推荐将python自带的IDLE和PyCharm集成IDE结合起来使用 1.1 Python命令行 Python命令行将以 >>> 开始,比如 >>>print 'Hello World!' 对于验证简单的命令可以在python自带的IDLE中完成  1.2 在Python自带的IDLE写一段小程序 在所

Docker虚拟化实战学习——基础篇(转)

Docker虚拟化实战学习--基础篇 2018年05月26日 02:17:24 北纬34度停留 阅读数:773更多 个人分类: Docker Docker虚拟化实战和企业案例演练 深入剖析虚拟化技术概念和应用场景 虚拟化,一是项技术--,是一种资源解决方案. 虚拟化技术是将物理资源转变为逻辑上可以管理的资源,以打破物理结构之间的壁垒,使计算元件运行在虚拟的基础上,而不是真实的物理资源上. 通过虚拟化技术,可以将物理资源转变为逻辑资源(虚拟机),应用程序服务运行在虚拟资源上,而不是真实的物理机上.