Linux上bash的部分基础特性:
命令补全: tab
shell程序在接收到用户执行命令的请求,分析完成后,最左侧的字符串会被当做命令
命令查找机制:
查找内部命令:
根据PATH环境变量中设定的目录,自左而右逐个搜索目录下的文件名
给定的打头字符如果能唯一标识某命令文件程序,则直接补全
给定的打头字符如果不能唯一标识某命令文件程序,在一次tab,会给出列表
路径补全:tab
在给定的起始路径下,以对应路径下的打头字串来逐一匹配其实路径下的每个文件
如果能唯一标识,则直接补全
否则,再一次tab,给出列表
双击Tab:
/2Tab 显示所有根目录下一级目录,包括隐藏目录
./2Tab 当前目录下子目录,包括隐藏目录
*2Tab 当前目录下子目录,不包括隐藏目录
~2Tab 所有用户列表
$2Tab 所有变量
@2Tab /etc/hosts记录 (CentOS7不支持)
=2Tab 相当于ls –A (CentOS7 不支持)
mkdir:新建一个目录
mkdir -p:自动按需创建父目录
-v:显示详细过程
-m:直接给定权限
注意:路径基名方为命令的作用对象,基名之前的路径必须得存在
rmdir: 删除目录
rmdir -p:删除某目录后,如果其父目录为空,则一并删除
-v:显示过程
命令行展开:
~:自动展开为用户的家目录,或指定的用户的家目录
{}: 可承载一个以逗号分隔的路径列表,并能够将其展开多个路径
例如:/tmp/{a,b}相当于 /tmp/a /tmp/b
命令的执行状态结果:
bash通过状态返回值来输出次结果
成功:0
失败:1-255
命令执行完成后,其状态返回值保存于bash的特殊变量$?中
引用:
强引用:''
弱引用:""
命令引用:``
bash快捷键:
Ctrl + l 清屏,相当于clear命令
Ctrl + c 终止命令
Ctrl + s 锁定屏幕
Ctrl + q 解锁
Ctrl + a 光标移到命令行首,相当于Home
Ctrl + e 光标移到命令行尾,相当于End
Ctrl + u 从光标处删除至命令行首
Ctrl + k 从光标处删除至命令行尾
cp命令:copy
单源复制:cp [OPTION]... [-T] SOURCE DEST
如果DEST不存在:则事先创建次文件,并复制源文件的数据流至DEST中
如果DEST存在:
如果DEST是非目录文件:则覆盖目标文件
如果DEST目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流
多源复制:cp [OPTION]... SOURCE... DIRECTORY
如果DEST不存在: 错误
如果DEST存在:
如果DEST是非目录文件:错误
如果DEST是目录文件:分别复制每个文件至目录中,并保持原名
cp [OPTION]... -t DIRECTORY SOURCE...
常用选项:
-i:交互式复制,即覆盖前提醒用户确认
-f:强制覆盖目标文件
-r:递归复制目录
history:命令行历史
命令历史一般记录在.bash_history文件中,默认记录1000条
当前shell中的历史记录会被记录在内存中,只有退出之后才会保存在.bash_history中
-c:清空命令历史
-d offset:删除历史中指定的第offset个命令
n:显示最近的第n条历史
-a:追加本次会话新执行的命令历史列表至历史文件
-n:读历史文件中未读过的行到历史列表
-r:读历史文件附加到历史列表
-w:保存历史列表到指定的历史文件
-p:展开历史参数成多行,但不存在历史列表中
-s:展开历史参数成一行,附加在历史列表后
HISTSIZE 修改history存储条数
HISTFILE 指定历史文件的存放位置,默认为~/.bash_history
HISTFILESIZE 指定历史文件的命令的存储条数
HISTTIMEFORMAT="%F %T" 显示每条命令的具体执行时间
HISTIGNORE="str1:str2" 把某些命令敏感的字符串给屏蔽掉不予显示
控制命令历史记录方式:
环境变量:HISTCONTROL
ignoredups 默认,忽略重复的命令,连续且相同为“重复”
ignorespace 忽略所有以空白开头的命令
ignoreboth 相当于ignoredups, ignorespace的组合
erasedups 删除重复命令
!n:执行history命令历史输出对应序号n的命令
!n:执行history历史中倒数第n个命令
Linux上bash的部分基础特性:的更多相关文章
- Linux上安装MySQL及其基础配置
本文主要介绍Linux下使用yum安装MySQL,以及启动.登录和远程访问MySQL数据库. 1.安装 查看有没有安装过: yum list installed mysql* rpm -qa | gr ...
- Linux上启动Cron任务
cron是一个Linux下的定时执行工具,无需人工干预,与quartz上的cron表达式稍有不同.由于cron是Linux上的内置基础服务,并不是所有服务器都是默认启动该服务的,如果没有启动可以使用下 ...
- linux文件系统及bash基础特性
linux文件系统 一.根文件系统 linux被识别的第一个被称为根之间关联的文件系统叫做根文件系统(rootfs),其他分区要想被读到,需要挂载到根目录的某个挂载点(根的子目录)上.根文件系统至关重 ...
- 自学Linux Shell19.1-gawk程序基础特性
点击返回 自学Linux命令行与Shell脚本之路 19.1-gawk程序基础特性 linux世界中最广泛使用的两个命令行编辑器: sed gawk 1. gawk概念 awk是一个强大的文本分析工具 ...
- 自学Linux Shell18.1-sed编辑器基础特性
点击返回 自学Linux命令行与Shell脚本之路 18.1-sed编辑器基础特性 linux世界中最广泛使用的两个命令行编辑器: sed gawk 1. sed概念 sed是stream edito ...
- linux基础(2)-基础命令和基础特性
基础命令 命令历史 命令历史的管理 登陆 shell 时,会读取命令历史文件中记录下的命令: ~/.bash_history . 登陆进 shell 后,新执行的命令只会记录在缓存中,这些命令会在用户 ...
- Linux 上的基础网络设备详解
抽象网络设备的原理及使用 网络虚拟化是 Cloud 中的一个重要部分.作为基础知识,本文详细讲述 Linux 抽象出来的各种网络设备的原理.用法.数据流向.您通过此文,能够知道如何使用 Linux 的 ...
- bash基础特性3(shell编程)
Linux上文本处理三剑客: grep:文本过滤工具 sed:stream editor,文本编辑工具 awk:文本报告生成器 grep -v:显示不能够被pattern匹配到的行 -i:忽略字符大小 ...
- [转] TCP/IP原理、基础以及在Linux上的实现
导言:本篇作为理论基础,将向我们讲述TCP/IP的基本原理以及重要的协议细节,并在此基础上介绍了TCP/IP在LINUX上的实现. OSI参考模型及TCP/IP参考模型 OSI模型(open syst ...
随机推荐
- 初识vuex
1.简介 vuex是 vue官方推荐的一个状态管理器.当我们遇到很多状态改变时,组件之间的通信就会变得复杂,这时候vuex的强大就展现出来. 我们从vuex的原理以及vuex的api两个部分介绍vue ...
- shell 并发多进程同时执行
#!/bin/bash SEND_THREAD_NUM= #设置进程数. tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名 mkfif ...
- [.NET] 一步步打造一个简单的 MVC 电商网站 - BooksStore(二)
一步步打造一个简单的 MVC 电商网站 - BooksStore(二) 本系列的 GitHub地址:https://github.com/liqingwen2015/Wen.BooksStore 前: ...
- 为什么要学Python
人生苦短,我用python.在大学四年的本科学习中,Python是我接触过语法最简单,功能最为强大的语言,拥有众多第三方库的支持的语言.如果要选一门编程语言作为入门,建议使用Python.但是为了更加 ...
- vue.js中,input和textarea上的v-model指令到底做了什么?
v-model是 vue.js 中用于在表单表单元素上创建双向数据绑定,它的本质只是一个语法糖,在单向数据绑定的基础上,增加了监听用户输入事件并更新数据的功能: 对,它本质上只是一个语法糖,但到底是一 ...
- SPOJ - VISIBLEBOX [multiset的使用]
tags:[STL][sort][贪心]题解:做法:先对数组a进行排序,再将数组a从头到尾扫一遍,使用multiset维护最小值,如果,即将放入集合的数字>=最小值的两倍,那我们就删除掉多重集合 ...
- python无线网络安全入门案例
原文链接:http://www.devx.com/security/Article/34741 翻译:诸神的黄昏 整理校对:玄魂 --- 随着⽆线⽹络在家庭和商业中的普及,新的安全挑战是⽆法避免的.保 ...
- Python之路-shell&计划任务
开发脚本自动部署及监控1.编写脚本自动部署反向代理.web.nfs:要求: I.部署nginx反向代理三个web服务,调度算法使用加权轮询: II.所有web服务使用共享存储nfs ...
- Spring框架下的单元测试
一.使用spring中对Junit框架的整合功能 除了junit4和spring的jar包,还需要spring-test.jar.引入如下依赖: <dependency> <grou ...
- 1163: 零起点学算法70——Yes,I can!
1163: 零起点学算法70--Yes,I can! Time Limit: 1 Sec Memory Limit: 64 MB 64bit IO Format: %lldSubmitted: ...