bash学习记录
bash:
管理员: 提示符#
普通用户:提示符$
环境变量
A=3(变量是指内存空间,A指的是内存空间的名称-变量标示符)
PS1 \u@\h:\w\$ \u用户名 \h主机名 \w工作目录的路径基名
# echo
引用一个变量: ${变量名};
bash特性:
命令有两种类型:
builtin:在shell中实现的即为内置命令;
外部命令:在文件系统上的某位置有一个与命令名称对应的可执行文件;
如何判断:使用type命令。
shell中的引用:
'':强引用,变量替换不会进行
"":弱引用,能够执行变量替换
``:命令引用,引用命令的执行结果,还有另外一种形式:$(命令)
变量替换:${变量名}
命令历史
bash保存过去曾经执行过的命令列表
当前shell进程保存在缓冲区中;
缓冲区中的命令在shell退出时保存至文件中,家目录的.bash_history。
使用上下箭头可以翻看此前执行过的命令:
命令别名
alias:显示当前shell中定义的所有别名:
# alias 别名='原始命令'
# unalias 别名
bash快捷键
ctrl+a:跳至命令行行首
ctrl+e: 尾
ctrl+u:清除命令行首至当前光标所在处的内容
ctrl+k:清除命令行尾至光标所在处的内容
ctrl+l:清屏,相当于clear命令
ctrl+c:终止当前正在执行的进程
ctrl+z:将当前命令送至后台
bash补全
命令补全:
shell命令:内部,外部
外部:在系统某路径下有一个可执行程序
内部:
PATH:是一组由冒号分割的命令
使用tab键执行补全
路径补全:在给出的打头路径补全;如果没有打头路径,则为当前;
提供编程环境
变量
程序控制
#!/bin/bash
shebang
ELF:
#!/bin/bash
程序=指令+数据
bash的变量
变量的类型:
本地变量:只针对当前shell进程有效,对其子shell以及其他shell都无效;
定义变量:[set]Var_Name="Value"
引用变量:${Var_Name}
撤销变量:unset Var_Name
局部变量:仅对局部代码生效
local Var_Name="vALUE"
环境变量:对当shell进程及其子shell有效;
exprot Var_Name="Value"
Var_Name="Value"
export Var_Name
导出
位置变量:
$1,$2...$n
./learnbash.sh 2 8
特殊变量:
$0:脚本名称本身
$?:上条命令的执行状态返回值0
0:成功
1-255:失效
$$
$!
$#
$*
bash学习记录的更多相关文章
- Python学习记录day6
title: Python学习记录day6 tags: python author: Chinge Yang date: 2016-12-03 --- Python学习记录day6 @(学习)[pyt ...
- GIT初始学习记录
目录 GIT学习记录 配置github与gitlib两个账号 基本操作 git init:初始化仓库 git status:查看仓库状态 git add :向缓存区中添加文件 git commit 保 ...
- Git学习记录 力做全网最强入门教程
目录 Git学习记录 力做全网最强入门教程 什么是GitHub? 什么是Git? Git的配置 Git的安装(只介绍windos操作系统下) Git的配置 至此我们的入门教程到此结束,更新中级教程要等 ...
- 区块链Hyperledger Fabric 学习记录(一)开发环境搭建(ubuntu16.04/ubuntu18.04)
目录 Fabric开发环境搭建 更新说明 教程环境及软件版本 Docker 安装Docker 配置用户组 配置Aliyun Docker加速器 安装docker-compose Go 下载源码 安装源 ...
- git原理学习记录:从基本指令到背后原理,实现一个简单的git
一开始我还担心 git 的原理会不会很难懂,但在阅读了官方文档后我发现其实并不难懂,似乎可以动手实现一个简单的 git,于是就有了下面这篇学习记录. 本文的叙述思路参照了官方文档Book的原理介绍部分 ...
- Quartz 学习记录1
原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...
- Java 静态内部类与非静态内部类 学习记录.
目的 为什么会有这篇文章呢,是因为我在学习各种框架的时候发现很多框架都用到了这些内部类的小技巧,虽然我平时写代码的时候基本不用,但是看别人代码的话至少要了解基本知识吧,另外到底内部类应该应用在哪些场合 ...
- Apache Shiro 学习记录4
今天看了教程的第三章...是关于授权的......和以前一样.....自己也研究了下....我觉得看那篇教程怎么说呢.....总体上是为数不多的精品教程了吧....但是有些地方确实是讲的太少了.... ...
- UWP学习记录12-应用到应用的通信
UWP学习记录12-应用到应用的通信 1.应用间通信 “共享”合约是用户可以在应用之间快速交换数据的一种方式. 例如,用户可能希望使用社交网络应用与其好友共享网页,或者将链接保存在笔记应用中以供日后参 ...
随机推荐
- sublime text3中成功使用bootstrap3
在视图这里卡了挺久的,一直是自己在研究.其实自己有一个坏毛病,遇到问题,在网上搜集下找不到便寻求帮助(大多数是求助无效果,因为自己也没搞懂), 这时候自己就会懈怠一会,然后隔一两天心血起伏后便又继续干 ...
- Android Timer 的 schedule()方法定时循环切换图片
void java.util.Timer.schedule(TimerTask task, long delay, long period)第一个参数,是 TimerTask 类,在包:import ...
- C++多线程(POSIX)
#include<iostream> #include<pthread.h> #include<ctime> #include<windows.h> u ...
- Android学习--RecyclerView
前面一篇总结了ListView,在这篇我们总结一些这个RecyclerView,我们就从最基本的开始,安卓团队是将RecyclerView定义在support库当中的,因此想要使用RecyclerVi ...
- 10.1综合强化刷题 Day4
财富(treasure) Time Limit:1000ms Memory Limit:128MB 题目描述 LYK有n个小伙伴.每个小伙伴有一个身高hi. 这个游戏是这样的,LYK生活的环境是以 ...
- 【Kafka】《Kafka权威指南》——分区partition
在上篇的例子里([Kafka]<Kafka权威指南>--写数据), ProducerRecord 对象包含了目标主题.键和值. Kafka 的消息是 一个个 键值对, ProducerRe ...
- 洛谷2085最小函数值(minval) + 洛谷1631序列合并
题目描述 有n个函数,分别为F1,F2,-,Fn.定义Fi(x)=Ai*x^2+Bi*x+Ci (x∈N*).给定这些Ai.Bi和Ci,请求出所有函数的所有函数值中最小的m个(如有重复的要输出多个). ...
- Android属性动画:动画流控制
今天的文章里,我将会和大家讨论对动画流的控制.我们可以通过Animator系列的API来控制动画的开始.停止和取消.在 KitKat也就是API level 19中,我们还可以控制动画的暂停和恢复.在 ...
- selenium遇到不可编辑input和隐藏input如何赋值
js = 'document.getElementsByName("m:csr_mt_gnccspjclfbxd:bmshldID")[0].type="text&quo ...
- java项目热加载工具jrebel
flask有热加载的功能,修为代码后,自动生效. java项目也有类似的功能,不过需要使用收费的插件jrebel 提供一个免费的注册服务器:http://139.199.89.239:1008/884 ...