shell基础#1
shell:能直接调用命令(python)
1、bash的基本特性
ctrl+L 清屏
2、IO重定向与管道符
都由shell提供 命令是一个可执行的二进制程序
3、编程基础
编程原理
程序:执行某个功能的代码
程序:指令(命令) + 数据(变量)+逻辑关系
4、grep和正则表达式!
pattern"模式"
#!/usr/local/python
#!/bin/bash
-------------------------
语句的逻辑
if
for*
放入for循环的列表
while
循环条件为T
until
循环条件为F
case
编写Linux的程序启动脚本
打断循环
break contiune
exit[0/1]
read--输入
echo--输出
*变量*
-------------------------
linux三剑客
sed 流编辑器 (stream edit )
1.内存模式 2.()
awk 报告生成器
独立编程语言
函数
固定功能
数组
列表、元组、字典
字符串
必须连续且相同的数据才是重复
date:linux时间 系统时钟
基于date命令创建目录
clock: 硬件时钟
#命令历史
作用:查看之前使用的命令
命令历史的文件
每个用户家目录下面的.bash.history
在关机的时候会自动写入一次 可以使用history -r 手动将内存的命令历史写入
命令历史的变量(环境变量)
env 查看环境变量 set 查看更详细的环境变量
数量:HISTSIZE = 1000 HISTCONTROL = ignoredups
history的常见操作
!#执行#的命令 !string 匹配最近一次的字符串
!!上一条命令
!$上一条命令的最后一个参数 = Esc+ .
常见选项:
-a:添加 -d+编号:删除某条 -c:清空历史命令缓存
Tar 归档(压缩与解压缩)
tar的常见参数:对文件操作,对目录操作
*通配符
-j bzip2
-J xz
-z gzip
-c create
-x extract解压#可以不用指定解压工具
-f 指定文件名
-v 显示详细信息
-t 不解压查看内容
clock hwclock查看硬件时钟(如何同步系统时钟与硬件时钟)cal日历
tar cjvf
压缩工具
gzip bzip2 xz zcat#在不解压的情况下查看压缩文件
命令执行状态
在linux中 每条命令执行都有两个结果
命令本身返回的内容
其次,命令执行的结果状态
$? 变量 存放命令执行状态的变量;
0表示成功 1-255表示失败、
命令快捷键
ctrl + l 清屏
ctrl + c
ctrl + u 删除光标前字符
ctrl + k 删除光标后字符
ctrl + a 跳到光标头
ctrl + e 跳到光标尾
ctrl + w 以空格为分隔符删除文件
ctrl + r 搜索最近一次使用的命令(输入字符串)
7、alias别名
系统启动时读取一些特殊文件的顺序;
alias cdnet = "cd /etc/sysconfig/network-scripts/"(这种方式只能在当前shell中生效;
/etc/profile 定义环境变量(所有用户)
/etc/bashrc 定义本地变量(所有用户)alias
~/.bash_profile 定义环境变量(指定用户)
~/.bashrc 定义本地变量(指定用户)alias
sources /etc/profile 或 . /etc/profile
8、文件通配符globbing
? 任意单个字符
* 任意长度任意字符
[] 指定范围内的任意一个字符
2.[^]指定范围以外的任意一个字符
^[[:space:]]*$
指定字符类
shell基础#1的更多相关文章
- Shell基础学习小结
0 shell基础概念 Shell是解释性语言,使用脚本编程语言的好处是,它们多半运行在比编译型语言还高的层级,能够轻易处理文件与目录之类的对象:缺点是它们的效率通常不如编译型语言.Shell命令有本 ...
- Shell基础-环境变量配置文件
Shell基础-环境变量配置文件 source 配置文件 或者 . 配置文件: 把环境变量写入配置文件后,需要用户重新登陆才能生效,而是用source命令,则能直接生效 主要的配置文件: /etc/p ...
- shell基础二十篇 一些笔记
shell基础二十篇 转自 http://bbs.chinaunix.net/thread-452942-1-1.html 研讨:Bash 内建命令 read (read命令更具体的说明见博客收藏的一 ...
- shell基础(转)
shell基础1:文件安全与权限 http://bbs.chinaunix.net/forum/viewtopic.php?t=434579&highlight=wingger 附:Linux ...
- Linux实战教学笔记17:精简shell基础
第十七节 精简shell基础 标签(空格分隔): Linux实战教学笔记 1,前言 1.1 为什么学习shell编程 Shell脚本语言是实现Linux/UNIX系统管理及自动化运维所必备的重要工具, ...
- shell基础及变量
一 Shell概述 1.Shell的作用——命令解释器,“翻译官” shell作为一个人机接口,用于解释用户输入的命令,将命令解释为Linux内核可以执行的2进制代码,并将执行的结果返回在标准终端上. ...
- Shell 基础教程
一个比较好的shell基础教程: http://www.runoob.com/linux/linux-shell.html
- Linux基础学习(10)--Shell基础
第十章——Shell基础 一.Shell概述 1.Shell是什么: (1)Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来 ...
- Linux Shell基础(下)
Linux Shell基础(下) 目录 一.shell特殊符号cut命令 二.cut.sort.wc.uniq命令 三.tee.tr.split命令 四.简易审计系统 五.fork, exec, so ...
- Linux shell基础知识(上)
Linux shell基础知识(上) 目录 一.shell介绍 二.命令历史 三.命令补全和别名 四.通配符 五.输入输出重定向 六.管道符和作业控制 七.shell变量 八.环境变量配置文件 九.b ...
随机推荐
- 【杂题】[CodeForces 1172D] Nauuo and Portals【构造】
Description 有一个n*n的网格,你需要在上面设置一些传送门,传送门由两个配对的格子组成,从一个进入会立刻从另一个同一方向出来. 现在有n个人从第1列出发向右走,位于(i,1)的人要走到(r ...
- CF1213G Path Queries
题目链接 问题分析 直接按边从小到大加入,求所有的连通点对数量即可.最后离线询问.使用并查集维护Size. 参考程序 #include <bits/stdc++.h> using name ...
- 工具类-ApplicationContextUtil
package com.zhouyy.netBank.util; import org.springframework.beans.BeansException; import org.springf ...
- Python3.X Selenium 自动化测试中如何截图并保存成功
在selenium for python中主要有三个截图方法,我们挑选其中最常用的一种. 挑最常用的:get_screenshot_as_file() 相关代码如下:(下面的代码可直接复制) # co ...
- scala实战学习-快速排序
def qSort(a:List[Int]):List[Int]={ if(a.length < 2) a else qSort(a.filter(a.head > _)) ++ a.fi ...
- Struts初学
自我概述 今天看了Struts,感觉这是个非常好用的东西!虽然它已经过时了,被springMVC取代了,但是仍然有了解的价值. 可是在学习过程中遇到了很多问题,比如其中一些原理很是抽象,有一些问题莫名 ...
- 在win7下,将QT集成到vs2010上
在网上查了很多,自己先是下载了一个5.2.0版本的,但在我的电脑上运行时老报错,一怒之下决定不再使用5.2.0版本的QT,而先择了更低版本的4.8.5版本,然后.....然后就成功了.谢天谢地,在这我 ...
- spark 笔记 4:Apache Hadoop YARN: Yet Another Resource Negotiator
spark支持YARN做资源调度器,所以YARN的原理还是应该知道的:http://www.socc2013.org/home/program/a5-vavilapalli.pdf 但总体来说, ...
- UNITY相关的一些新功能,新想法
1,lua profiler for unity : https://github.com/ElPsyCongree/LuaProfiler-For-Unity 参考文章:https://blog.c ...
- 使用DBLink方式同步远程数据库中含Blob、Clob字段表的问题解决
在数据库同步中我们经常会用到DBLink方式.DBLink可以将物理上存放于网络的多个数据库在逻辑上当成一个单一的大数据库.开发人员无需关心数据库的网络分布,就能很方便的实现从不同数据库之间读取数据. ...