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:]]*$
指定字符类

原文地址:https://www.cnblogs.com/schoolboy999/p/11311595.html