shell的基础知识

一、bash有以下特点:

1.记录命令历史

2.指令和文件名补全

3.别名

alias rm='rm -i'

4.通配符

* 0个或多个字符

?​匹配一个字符

5 输入输出重定向

输入重定向  <</p>

输出重定向  >​

6.管道​符   |

二、变量

环境变量PATH:它是Shell预设的一个变量

echo  $PATH​

echo $PWD

echo $HOME

系统预设的变量:使用env命令即可全部列出系统预设的环境变量了​,不过登录的用户不同这些环境变量的值也不一样

PATH:决定了shell到哪些目录中寻找命令或程序

HOME当前用户主目录

HISTSIZE历史记录数据

LOGNAME当前登录名

HOSTNAME主机的名称

PWD当前目录​

env命令显示的只是环境变量,系统预设的变量还有很多,可以使用set命令都显示出来

set命令不仅可以显示系统预设的变量,还可以显示用户自定义的变量

用户自定义变量

myname='sassy xu'​   变量内容有特殊字符如空格时,需要加上单引号

myname="sassy's'"​  变量内容本身有单引号时,需要加上双引号

myname=`pwd`​   变量内容需要用到其他命令运行结果,则使用反引号

myname="$LOGNAME"sassy 变量内容累加其他变量的内容,需要加双引号

系统环境变量及个人环境变量的配置文件

/etc/profile:存放系统环境变量的文件,比如PATH,LOGNAME,HOSTNAME等

/etc/bashrc:系统文件,预设PS1,root身份登录进去linux系统PS1就是 [root@localhost ~]# ​

用户目录下的几个隐藏文件

.bash_profile

.bashrc

.bash_history

.bash_logout

三、常用命令​

sort命令 用来排序​

(1)sort将文件的每一行作为一个单位,相互比较,比较原则是首字符向后,依次按照ASCII码进行比较,最后将他们按升序输出。

cat seq.txt

banana

apple

pear

orange

sort seq.txt​

apple

banana

orange

pear

​(2) sort -u  去除重复项

(3)sort -r  倒序排列

cat number.txt

1

3

5

2

4

sort -r number.txt

5

4

3

2

1

(4) sort -n 选项 按照数值大小排序

(5)​​ sort的-t选项和-k选项

如果有一个文件内容是这样的, cat facebook.txt

banana:30:5.5

​apple:10:2.5

​pear:90:2.3

​orange:20:3.4​

第一列表示水果类型,第二列表示水果数量、第三列表示单价

以水果数量,也就是第二列排序,

sort -t: -k 2​ -n facebook.txt

apple:10:2.5

​orange:20:3.4

​banana:30:5.5

​pear:90:2.3​

grep命令​

grep是针对文本的行操作的​

​grep -n  '关键词'  filename   过滤出带有关键词的行并输出行号

grep -vn '关键词'  filename  过滤出不带有关键词的行并输出行号

grep [0-9] text.txt 过滤出所有包含数字的行

在正则表达式中  [0-9a-zA-Z] 过滤出数字以及大小写字母,

[^字符]  表示除[]内的字符之外的字符​

^表示行的开始,$表示行的结束   ^r   h$

grep -i  '关键词'  filename  忽略大小写​

grep -c  '关键词'  filename  统计找到关键词的次数​

grep  --color=auto  将找到的关键词加上颜色显示​

Shell编程(二)——shell的基础知识及常用命令的更多相关文章

  1. Git基础知识与常用命令

    一:相关概念: 1:工作区(Working Directory): 就是你在电脑里能看到的目录 2:版本库(Repository): 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. ...

  2. MySQL基础知识和常用命令总结

    说明:以下内容是阅读书籍<<MySQL必知必会>>的摘要和总结 检索数据 排序检索数据 过滤数据 使用通配符过滤 使用正则表达式进行搜索 创建计算字段 使用数据处理函数 汇总数 ...

  3. MongoDB基础知识与常用命令

    SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row document 数据记录行/文档 col ...

  4. linux基础知识和常用命令

    1.修改主机名 切换到root,然后执行 vim /etc/sysconfig/network,进入其中,更改hostname即可.insert进入修改,esc+:,wq保存退出. 2.用户切换 普通 ...

  5. (四)FastDFS 高可用集群架构学习---后期运维--基础知识及常用命令

    1.fastdfs 七种状态 FDFS_STORAGE_STATUS:INIT :初始化,尚未得到同步已有数据的源服务器 FDFS_STORAGE_STATUS:WAIT_SYNC :等待同步,已得到 ...

  6. 【Shell编程】Shell基本语法

    Shell 语法   Shell程序设计作为一种脚本语言,在Linux系统中有广泛的应用,本文记录了关于Shell程序设计的基础语法知识和常用命令,方便查询,熟练使用shell也需要经常实践,这对于完 ...

  7. 【转载】salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句

    salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句 salesforce如果简单的说可以大概分成两个部分:Apex,VisualForce Page. 其中Apex ...

  8. 【Shell编程】Shell程序设计

    1.Shell简介   作为Linux灵感来源的Unix系统最初是没有图形化界面的,所有的任务都是通过命令行来实现的.因此,Unix的命令行系统得到了很大的发展,逐步成为一个功能强大的系统.   Sh ...

  9. shell编程系列23--shell操作数据库实战之mysql命令参数详解

    shell编程系列23--shell操作数据库实战之mysql命令参数详解 mysql命令参数详解 -u 用户名 -p 用户密码 -h 服务器ip地址 -D 连接的数据库 -N 不输出列信息 -B 使 ...

随机推荐

  1. No module named bz2

    yum install bzip* python2.6 import bz2 python2.7 import bz2 error 解决:sudo cp /usr/lib64/python2.6/li ...

  2. 20165101刘天野 2018-2019-2《网络对抗技术》Exp2 后门原理与实践

    目录 20165101刘天野 2018-2019-2<网络对抗技术>Exp2 后门原理与实践 1. 实验内容 1.1 使用netcat获取主机操作Shell,cron启动 1.2 使用so ...

  3. Git使用的常用命令

    一.git工作流程 Workspace工作区:是当前工作目录,可以在此目录编辑文件 Index缓存区:add指令,保存文件的改动 Repository仓库:commit指令,将多次的文件改动最后提交 ...

  4. window下安裝redis服務

    一.下载windows版本的Redis github下载地址:https://github.com/MicrosoftArchive/redis/releases/tag/win-3.2.100   ...

  5. share point CSOM 客户端模式 创建 list

    /// <summary> /// 创建新的列表 list /// </summary> /// <param name="web"></ ...

  6. PAT1037. Magic Coupon (25)

    #include <iostream> #include <algorithm> #include <vector> using namespace std; in ...

  7. C++中map的用法

    map的特性是,所有元素都会根据元素的减值自动被排序.map的所有元素都是pair,同时拥有实值(value)和键值(key).pair的第一个元素会被视为键值,第二个元素会被视为实值.map不允许两 ...

  8. oracle 查询表名、字段名、添加注释

    --查询所有表名 SELECT T.TABLE_NAME FROM USER_TABLES T; --查询所有字段名 SELECT T.COLUMN_NAME FROM USER_COL_COMMEN ...

  9. JavaScript tips —— 谈谈数组乱序

    前言 先看一个段代码 function randArr (arr) { return arr.sort(() => { return (Math.random() - 0.5); }); } 目 ...

  10. 报错org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [bean.xml]

    报这种错的原因基本上是applicationContext.xml文件中bean配置错误,错误如下: org.springframework.beans.factory.BeanCreationExc ...