linux基础02-bash特性
Linux的行结束符是:[$]
Windows的行结束符是:[$+回车]
目录管理:
ls、cd、pwd、mkdir、rmdir、tree
文件管理:
touch、stat、file、rm、cp、mv、nano
日期时间:
date、clock、hwclock、cal
查看文本:
cat、tac、more、less、head、tail
(21)
cat:连接并显示
-n :在显示时,对每一行编号
-E :显示结束符。
例:cat /etc/issue
cat -n /etc/issue
(22)
分屏显示:
more、less
more: 向后翻
less: 向前翻
(23)
head:查看前n行
tail:查看后n行
-n :默认值为10.
其实-n 可以直接用 -2等数字代替。
tail -f: 查看文件尾部,不退出,等待显示后续追加至此文件的新内容;(非常有用的命令)
解释:如果另一个程序在文件末尾追加了内容,会直接在当前程序显示。
(24)
文本处理:
cut、join、sed、awk
(sed awk grep号称文本处理三大利器)
cut:
-d: 指定字段分隔符,默认是空格
-f: 指定要显示的字段
-f 1,3 :显示第一个和第三个。
-f 1-3 :显示第一个到第三个。
例:
cut -d : -f 1 /etc/passwd
(25)
文本排序:sort 默认按照ascii码表顺序排序。
-n:数值排序
-r: 降序
-t: 字段分隔符
-k: 以哪个字段为关键字进行排序
-u: 排序后相同的行只显示一次
-f: 排序时忽略字符大小写
(26)
uniq:
-c: 显示文件中行重复的次数
-d: 只显示重复的行
例:uniq -c test.txt
(27)文本统计:wc (word count)
-l :只显示行数
-w :只显示单词数
-c :只显示 字节数
-L :最长的一行,包含多少个字符。
(28)字符处理命令:tr —— 转换或删除字符
tr [OPTION]... SET1 [SET2]
-d: 删除出现在字符集中的所有字符
例:
tr 'ab' 'AB' //替换输入的两个字符串中a 替换为A;b替换为B。
tr 'ab' 'AB' < /etc/passwd //对文件/etc/passwd执行字符替换。
tr 'a-z' 'A-Z' //把所有小写字符换成大写字符。
(29) 命令行编辑:
光标跳转:
Ctrl+a:跳到命令行首
Ctrl+e:跳到命令行尾
Ctrl+u: 删除光标至命令行首的内容
Ctrl+k: 删除光标至命令行尾的内容
Ctrl+l: 清屏
(30) 命令历史:
查看命令历史:history
-c:清空命令历史
-d OFFSET [n]: 删除指定位置的命令
-w:保存命令历史至历史文件中
例:
history -d 100 10 //删除第100个命令开始10个历史命令。
(31)环境变量
PATH:命令搜索路径
HISTSIZE: 命令历史缓冲区大小(即:可以表示的命令历史的条目数,默认是1000.)
(32)命令历史的使用技巧:
!n:执行命令历史中的第n条命令;
!-n: 执行命令历史中的倒数第n条命令;
!!: 执行上一条命令;
!string:执行命令历史中最近一个以指定字符串开头的命令
引用前一个命令的最后一个参数:有以下三个方法:
① !$: 引用前一个命令的最后一个参数;
② Esc, . //按下esc 松开再按.
③ Alt+. //按下Alt再按.
(33)命令别名
alias CMDALIAS='COMMAND [options] [arguments]'
在shell中定义的别名仅在当前shell生命周期中有效;别名的有效范围仅为当前shell进程;
例:alias clear=cls
撤销别名:ualias cls
显示命令自身:\CMD
例如系统自建别名:ls = ls -i, 可以使用:\ls
(34)命令替换:
$(COMMAND), 或者反引号:`COMMAND`
把命令中某个子命令替换为其执行结果的过程.
例如:创建当前时间的文件
touch ./file-$(date+%F-%H-%M-%S).txt
file-2013-02-28-14-53-31.txt
(35)bash支持的引号种类:
反引号 `` : 命令替换
双引号 "" : 弱引用,可以实现变量替换
单引号 '' : 强引用,不完成变量替换
(36)文件名通配, globbing
通配符不能表达所有情况,有时需要借助正则表达式。
*: 任意长度的任意字符
?:任意单个字符
[]:匹配指定范围内的任意单个字符
[abc], [a-m], [a-z], [A-Z], [0-9], [a-zA-Z], [0-9a-zA-Z]
[:space:]:空白字符 //使用时需要再加一层中括号[]
[:punct:]:标点符号 //使用时需要再加一层中括号[]
[:lower:]:小写字母 //使用时需要再加一层中括号[]
[:upper:]: 大写字母 //使用时需要再加一层中括号[]
[:alpha:]: 大小写字母 //使用时需要再加一层中括号[]
[:digit:]: 数字 //使用时需要再加一层中括号[]
[:alnum:]: 数字和大小写字母 //使用时需要再加一层中括号[]
获取上面这些特殊表示方式的帮助:
# man 7 glob
脱字符[^]: 匹配指定范围之外的任意单个字符
例:字母开头,中间有空格,非字母结尾:
[[:alpha:]]*[[:space:]]*[^[:alpha:]]
linux基础02-bash特性的更多相关文章
- linux基础之bash特性
linux基础之bash特性 1.命令历史 命令历史包含的环境变量 $HISTSIZE:命令历史记录的条数 $HISTFILE:命令历史文件~/.bash_history $HISTFILESIZE: ...
- Linux基础之bash shell介绍及基本特性
今天继续讲Linux基础知识,内容是关于bash shell的.分享以下bash shell的相关知识,例如基本特性等. 1.8)bash shell的介绍 1.8.1)什么是bash shell ...
- Linux基础 -02
3.4 虚拟机快照技术 什么是快照 3.5 虚拟机克隆技术 什么是克隆 4.Bash Shell快速入门 4.1 什么是Bash Shell bash shell是一个命令解释器,主要负责用户程序与内 ...
- Linux基础之-Bash命令优先级
一. Bash简介 命令解释器,也就是 Bourne Again Shell,起源于shell.shell俗称壳,它是指UNIX系统下的一个命令解析器:主要用于用户和系统的交互.UNIX系统上有很多种 ...
- Linux基础02
** Linux基本操作常用命令(二) ** 用户名与主机名 当你进入Linux终端时,你会看到如下样式的图片: 其中[z@z01]方括号内的z表示当前系统登录操作的用户名,@后的z01表示当 ...
- 《前端运维》一、Linux基础--02用户与权限
其实说真的,这些基础挺枯燥的,内容呢绝大多数都是些静态的. 上一篇文章我们学习了基本的指令和vim编辑器的操作方法.这篇文章我们主要来学习下Linux中用户的概念和权限相关的知识. 一.用户与用户组 ...
- Linux基础(02)MakeFile的创建和使用
makefile是生成文件的脚本 , 把当前文件下的.c文件生成.o文件和可执行程序 SRC = $(wildcard *.c) OBJS = $(patsubst %.c,%.o,$(SRC)) C ...
- Linux学习笔记(15)shell基础之Bash基本功能
1 shell概述 shell是一个命令解释器,为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序.用户可以用shell启动.挂起.停止甚至是编写一些程序. shell是一个功能强大 ...
- Linux基础知识回顾及BASH学习
2019-2020-030189224 <网络攻防技术与实践>第一周学习总结 Linux基础知识错题回顾 1.Linux中使用(B)命令新建空白文件. A .mkdir B .touch ...
- Linux 基础命令、文档树 和 bash
最近发现了一个总结得更好的:bash cheatsheet 本文只是我对 linux 基础学习的一个总结,可能仅适用于复习用.算是我的 Linux 备忘录. 最基础 tab 补全 * 通配符 ctrl ...
随机推荐
- Zookeeper本地模式安装
本地模式安装部署 1.安装前准备 (1)安装Jdk (2)拷贝Zookeeper安装包到Linux系统下 (3)解压到指定目录 tar -zxvf zookeeper-3.4.10.tar.gz -C ...
- Python3 freetds.conf odbcinst.ini odbc.ini 之间的关系
Python3 freetds.conf odbcinst.ini odbc.ini 之间的关系 三者分别是FreeTDS和UnixODBC的配置文件: 1,FreeTDS中的freetds.conf ...
- Linux普通用户使用sudo免输密码(Debian/Redhat通用)
今天使用的Debian,由于使用的是普通用户,而使用的sudo都需要输入密码的繁琐操作, 下面是使用sudo时免输入密码. 需要管理员权限进行以下操作. 修改sudoers vim /etc/sudo ...
- keras与tensorboard结合使用
使用tensorboard将keras的训练过程显示出来(动态的.直观的)是一个绝好的主意,特别是在有架设好的VPS的基础上,这篇文章就是一起来实现这个过程. 一.主要原理 keras的在训练(fit ...
- PreparedStatement与Statement区别
就这牛客网的一道题,进行分析PreparedStatement与Statement的区别. 题目: 关于PreparedStatement与Statement描述错误的是() A 一般而言,Prepa ...
- 2018年11月20日 远交近攻 list1
list 列表用法 li=[1,2,3,"abc"] #列表中的元素,可以为数字或者字符串或者布尔值或者就是列表等,所有都能放进去 #列表中也能嵌套列表 pi=[1,2,3,[2, ...
- spring配置jax-ws
在spring配置文件中新建bean(或者是在配置文件中添加bean),在该bean中添加指定的访问地址. @Bean public static SimpleJaxWsServiceExporter ...
- python第一阶段总结(1)
python3第一阶段的总结 首先申明一下,本人是看网络课程“老男孩”过来写博客的,想把自己学到的东西分享一下.同时给老男孩打个广告,其教学水平真的挺好的.仅据我个人多年的学习评价. 好,接下来是我对 ...
- Bootstrap3基础 btn-group-vertical 按钮组(横着、竖着排列)
内容 参数 OS Windows 10 x64 browser Firefox 65.0.2 framework Bootstrap 3.3.7 editor ...
- Python3 tkinter基础 Frame bind 敲击键盘事件 将按键打印到console中
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...