Linux默认的shell版本是bash.

我们所敲的命令都是有记录的;被保存在.bash_history文件中。只有当用户正常突出shell时,命令才会保存至.bash_history中。

!!:连续两个感叹号表示执行上一条指令

!n:这里的n是数字,表示执行命令中的第n条指令。

# history | grep  102   查看第102条命令

# !102   执行102条命令。

!字符串:例如!pw  表示命令中最近的一次以pw开头的命令。

别名:

#   alias  查看所有的别名。

# alias gys='pwd'  pwd命名成gys

# unalias gys   解除别名。

通配符

* 匹配零个或多个字符,?匹配一个字符。

ls  gy*  匹配符合gy开头的所有文件和目录已级目录下的文件和目录

ls gy?   匹配符合gy开头的......

 重定向

输出重定向    >  屏幕内容向文件填充

追加重定向  >>   屏幕内容追加到文件末尾

echo    '123' >1.txt

echo   'gys' >>1.txt

 管道符    |   前一个指令的输出作为后一个指令的输入

cat   /etc/passwd|wc  -l

作业控制

Ctrl+z  暂停

fg 恢复(foreground)

bg 到后台运行(background)

Ctrl+c  终止运行

jobs  查看当前被暂停或者在后台运行的任务

查看变量

# echo   $PATH

# echo  $HOME

# echo $PWD

#echo $LOGNAME

查看系统预设的全部系统变量    #env

set也可以查看系统预设变量,还可以查看用户自定义的变量

自定义变量

# myname=gys

# echo $myname

# set |grep myname

目前改变量只能在当前shell生效。

# bash    进入一个子shell环境

# echo $myname   无法展示到内容

# exit

如何让环境变量一直生效?

# echo "export myname=gys" >> etc/profile

# source !$

# bash

# echo $myname

# exit

# su - test

$ echo $myname

设置自定义变量有哪些规则

1)设置变量a=b,其中a为变量名,b为变量的内容,等号两边不能由空格

2).变量名只能由字母,数字以及下划线组成,而且不能以数字开头

3).当变量内容带有特殊字符(如空格)时,需要加单引号。

# myname='gy  s'

4).变量内容中本身带有单引号,这时就需要加双引号。

# myname="gy's"

5).如果变量内容中需要用到其他变量,使用反引号

# myname=`pwd`

6).变量内容可以累加其他变量内容,要用双引号,不能用单引号。

# myname="$LOGNAME"gys

# echo $myname

rootgys

双引号不会取消特殊字符本身的作用,而使用单引号特殊字符将全部失去其本身的作用。

# abc=123

# echo $abc

# bash

# echo $abc  (输出一个空值)

# exit

# export abc

#echo $abc

123

#bash

#echo $abc

123

export就是申明一个变量,让改shell的子shell也知道变量abc的值。取消变量  用unset

# echo $abc

123

#unset abc

#echo $abc (输出空内容)

CentOS之Shell基础的更多相关文章

  1. centos shell基础 alias 变量单引号 双引号 history 错误重定向 2>&1 jobs 环境变量 .bash_history source配置文件 nohup & 后台运行 cut,sort,wc ,uniq ,tee ,tr ,split, paste cat> 2.txt <<EOF 通配符 glob模式 发邮件命令mail 2015-4-8 第十二节课

    centos shell基础知识 alias  变量单引号 双引号   history 错误重定向 2>&1  jobs  环境变量 .bash_history  source配置文件 ...

  2. Linux正则表达式、shell基础、文件查找及打包压缩

    Linux正则表达式.shell基础.文件查找及打包压缩 一.正则表达式 Linux正则表达式分为2类: 1.基本正则表达式(BRE) 2.扩展正则表达式(ERE) 两者的区别: 1.使用扩展正则表达 ...

  3. shell基础知识讲解

    第1章 shell基础 1.1 什么叫做shell编程 shell编程也叫做bash高级编程语法 1.2 常见的shell命令解释器 bash            redhat和centos使用 d ...

  4. Shell基础学习小结

    0 shell基础概念 Shell是解释性语言,使用脚本编程语言的好处是,它们多半运行在比编译型语言还高的层级,能够轻易处理文件与目录之类的对象:缺点是它们的效率通常不如编译型语言.Shell命令有本 ...

  5. Shell基础-环境变量配置文件

    Shell基础-环境变量配置文件 source 配置文件 或者 . 配置文件: 把环境变量写入配置文件后,需要用户重新登陆才能生效,而是用source命令,则能直接生效 主要的配置文件: /etc/p ...

  6. shell基础二十篇 一些笔记

    shell基础二十篇 转自 http://bbs.chinaunix.net/thread-452942-1-1.html 研讨:Bash 内建命令 read (read命令更具体的说明见博客收藏的一 ...

  7. CentOS下shell显示-bash-4.1#不显示用户名路径的解决方法

    CentOS下shell显示-bash-4.1$不显示用户名路径的解决方法 问题描述: CentOS下新增一个用户,登录进去之后shell脚本的信息如下: 而不是我们经常看到的username@hos ...

  8. shell基础(转)

    shell基础1:文件安全与权限 http://bbs.chinaunix.net/forum/viewtopic.php?t=434579&highlight=wingger 附:Linux ...

  9. Linux实战教学笔记17:精简shell基础

    第十七节 精简shell基础 标签(空格分隔): Linux实战教学笔记 1,前言 1.1 为什么学习shell编程 Shell脚本语言是实现Linux/UNIX系统管理及自动化运维所必备的重要工具, ...

随机推荐

  1. MySQL Binlog--MIXED模式下数据更新

    在 Mixed 模式下,MySQL 会根据执行的每一条具体的 SQL 语句来区分对待记录的日志形式,也就是在 statement 和 row 之间选择一种.如果SQL语句为UPDATE/DELETE等 ...

  2. sofa graphql 2 rest api框架

    sofa 是一个出发点不一样的工具,提供了从graphql 2 rest 的处理,一般现有的框架都在 关注的是rest 2 graphql (大部分还是基于swagger.open api 标准进行设 ...

  3. Avoiding post increase or decrease

    When we write a loop, most of us will use post increase or decrease, but there is a better solution. ...

  4. out, ref 和 params 的区别和用法

    1. out 参数. 如果你在一个方法中,返回多个相同类型的值,可以考虑返回一个数组. 但是,如果返回多个不同类型的值,返回数组就不可取.这个时候可以考虑使用out参数. out参数就侧重于在一个方法 ...

  5. tomcat中配置https

    HTTPS配置中分为单向连接和双向连接,单向连接只需要服务器安装证书,客户端不需要,双向连接需要服务器和客户端都安装证书: 一.Keytool命令: 1.生成密钥对: keytool -genkey ...

  6. Mysql5.6 for Centos6.5源码编译安装

    ## 说明 不同服务器需要改变 server_id ,同一台机器上需要改变 port 1. 关闭防火墙[root@mysql ~]# service iptables status --查看防火墙状态 ...

  7. VS2013 未找到与约束。。。

    新建项目或打开项目时,VS2013 未找到与约束...问题: 解决方案:控制面板>程序>程序和功能 找到如下选中软件右击修复 即可(修复前需关闭VS2013)

  8. py-day1-5 python 分割 、 字母大小转换

    # partition() 分割为3段 从左往右遇见的第一个开始 test = 'bassaiwoll' v = test.partition('s') print(v) ('ba', 's', 's ...

  9. Zookeeper基本数据模型

    一.Zookeeper基本数据模型 是一个树形结构,类似于前端开发中的tree.js组件 zk的数据模型也可以理解为linux/unix的文件目录  /usr/local/... 每一个节点称之为zn ...

  10. (转)Mac环境下svn的使用

    在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境.在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还 ...