Shell是什么

Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。

查看Linux支持的Shell:vi /etc/shells

echo输出命令

echo [选项]  [输出内容]

第一个脚本:

vi hellol.sh

输入以下命令:

#!/bin/bash

#wuwuyong

echo "hello world"

脚本执行:

chmod 755 hello.sh(赋予权限)  ./hello.sh

或Bash hello.sh

历史命令

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

选项:-c(清空历史命令)  -w(把缓存中的历史命令写入历史命令保存文件)

别名和快捷键

别名:alias  别名=‘原命令’     (设定命令别名)

alias(查询命令别名)

让别名永久生效:vi   /root/.bashrc      加上alias   别名=‘原命令’

删除别名:unalias  别名

输入输出重定向

输入重定向:wc  [选项]  [文件名]

选项:-c  统计字节数;-w 统计单词数;-l统计行数

把文件作为命令的输入:命令<文件

多命令顺序执行与管道符

管道符:命令1  |  命令2(命令1的正确输出作为命令2的操作对象)

grep [选项]  “搜索内容”  文件名     :   显示文件中包含搜索内容的行

选项:-i(忽略大小写) ;-n(输出行号);-v(方向查找)

通配符和其他特殊符号

用户自定义变量

变量的定义:变量名=变量

变量调用:echo   $name

变量查看:set

变量删除:unset  name

环境变量

设置环境变量:export 变量名=变量值

查询变量:env

删除变量:unset 变量名

位置参数变量

比如一个sh文件中有如下命令:

echo $0

echo $1

echo $2

执行.sh 11 22的结果是.sh  11  22

预定义变量

接收键盘输入

数值运算与运算符

declare声明变量类型

运算符:

变量测试与内容替换

环境变量配置文件

正则表达式

正则表达式与通配符:

基础正则表达式:

字符截取命令

printf命令

awk命令

sed命令

字符处理命令

条件判断

按照文件类型进行判断

流程控制  if语句

case语句

Linux之shell详解的更多相关文章

  1. linux awk命令详解

    linux awk命令详解 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分 ...

  2. linux cat 命令详解

    linux cat 命令详解 http://linux.chinaunix.net/techdoc/system/2007/11/16/972467.shtml adb shell su //这个不一 ...

  3. Linux crontab 命令详解

    在 Linux 中,任务可以被配置在指定的时间段.指定的日期.或系统平均载量低于指定的数量时自动运行.红帽企业 Linux 预配置了对重要系统任务的运行,以便使系统能够时时被更新.譬如,被 locat ...

  4. linux grep命令详解

    linux grep命令详解 简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来 ...

  5. 【转发】linux yum命令详解

    linux yum命令详解 yum(全 称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理, ...

  6. linux yum 命令 详解

    linux yum命令详解 yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能 ...

  7. Linux find命令详解

    转自Linux find命令详解 一.find 命令格式 1.find命令的一般形式为: find pathname -options [-print -exec -ok ...] 2.find命令的 ...

  8. linux进程地址空间详解(转载)

    linux进程地址空间详解(转载) 在前面的<对一个程序在内存中的分析 >中很好的描述了程序在内存中的布局,这里对这个结果做些总结和实验验证.下面以Linux为例(实验结果显示window ...

  9. Linux crontab 命令详解(含配置文件路径)

    编辑/etc/crontab 文件配置cron cron 服务每分钟不仅要读一次/var/spool/cron内的所有文件,还需要读一次/etc/crontab,因此我们配置这个文件也能运用cron服 ...

随机推荐

  1. django初始化

    Django 版本 安装 pip安装 pip install django 安装最新版本的 pip install django==1.11.11 安装指定版本的 验证安装 直接去代码中调用djang ...

  2. C语言博客作业08

    C语言I博客作业08](https://www.cnblogs.com/490-85-00-58-/p/11863312.html) 问题 回答 这个作业属于那个课程 C语言程序设计II 这个作业要求 ...

  3. 按照ID倒序查出某个字段不重复的集合

    一.需求 有如下一个表pp_test: id name 1 aa 2 bb 3 cc 4 aa 5 cc 6   要求查出name字段中不重复的值(不算空值),并且按照id的倒序排列(不必输出ID). ...

  4. Python中的Base64编码的加密与解密

    Base64 可以干些啥? Base64编码的作用: 由于某些系统中只能使用ASCII字符.Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法. 图片(and种子)base64 ...

  5. ThinkPHP5——模型关联(一对一关联)

    定义 定义一对一关联使用了hasOne,hasOne方法的参数包括: hasOne('关联模型名','外键名','主键名',['模型别名定义'],'join类型'); 下面定义一个用户表,公司给每个用 ...

  6. 【云速建站】微信公众平台中维护IP白名单

    [摘要] 介绍获取接入IP白名单的操作步骤 网站后台对接微信公众号.支付等都依赖于白名单,接下来就介绍一下白名单的配置. 1.1      为什么要设置白名单 为了提高公众平台开发者接口调用的安全性, ...

  7. Delphi - 手把手教你基于D7+Access常用管理系统架构的设计与实现 (更新中)

    前言 从事软件开发工作好多年了,学的越深入越觉得自己无知,所以还是要对知识保持敬畏之心,活到老,学到老! 健身和代码一样都不能少,身体是革命的本钱,特别是我们这种高危工种,所以小伙伴们运动起来!有没有 ...

  8. [leetcode] H-Index (Hash Table)

    题目: Given an array of citations (each citation is a non-negative integer) of a researcher, write a f ...

  9. VIM操作记录

    =============================================== 2019/12/12_第1次修改 vr7jj ============================= ...

  10. 调用rest api杀死yarn上的应用

    调用rest api杀死yarn上的应用 调用yarn reat api,通过app name 获取application id public static String getApplication ...