3. Shell基础知识 3.1 Shell的由来 3.1.1 Bourne Agin Shell 3.1.2 其他的shell, 有 zsh, ksh等 3.2 查看有没有shell 3.2.1 yum list | grep zsh 3.2.2 ls /root/.bash_history 3.2.3 echo $HISTSIZE -> vi /etc/profile 修改HISTSIZE的值 -> source /etc/profile 3.2.4 history -c //清空命令历史(内存中的) 3.2.5 HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S" 3.2.6 vi /etc/profile 3.2.7 chattr +a ~/.bash_history //只能被追加,不会被删除 3.2.8 !! //最后一条命令; !n // !words // 3.3 安装参数补全源 3.3.1 yum install -y bash-completion //安装参数补全源后需要重启电脑(reboot)才生效 3.3.2 systemctl restart network.service //重启网络服务 3.3.3 rpm -qa bash-completion 3.4 alias 配置文件 3.4.1 vi .bashre //alias的配置文件(一部分) 3.4.2 cd /etc/profile.d/ //alias其他的一部分配置文件 3.4.3 Tab键: 3.4.3.1 按一下匹配命令和参数 3.4.3.2 按两下显示匹配信息供选择 3.5 通配符 3.5.1 * 匹配所有字符 ls *.txt 3.5.2 ? 匹配一个字符 ls ?.txt 3.5.3 ls [0-9].txt 3.5.4 ls {1,2}.txt 3.5.5 重定向 cat 1.txt > 2.txt 3.5.6 追加重定向 cat 1.txt >> 2.txt 3.5.7 错误重定向 lsaaa 2> a.txt 3.5.8 追加错误重定向 lsaaa 2>> a.txt 3.5.9 wc -l < 1.txt //输入重定向,wc -l查看文本行数;左边需要是命令 3.5.10 ls [12].txt aaa.txt &> a.txt //&> 为正确错误重定向 3.5.11 ls [12].txt aaa.txt >1.txt 2>a.txt //将正确的和错误的区分开 3.6 管道符和作业控制 3.6.1 cat 1.txt | wc -l 3.6.2 cat 1.txt | grep 'aaa' 3.6.3 ctrl + z //暂停一个任务 3.6.4 df -h //查看磁盘使用量 3.6.5 fg //前台frontGround 3.6.5.1 fg IDNumber 3.6.6 jobs //查看后台或已停止的任务 3.6.7 bg //后台background 3.6.7.1 bg IDNumber 3.6.8 vmstate 1 //动态的显示系统状态 3.6.9 sleep 100 //暂停100秒 3.6.9.1 sleep 100 & //把命令放到后台运行 3.6.9.2 ps aux| grep sleep //查看进程 3.7 shell变量 3.7.1 env //查看系统的环境变量 3.7.2 set 命令 3.7.2.1 set |grep 111 //查找111 3.7.2.2 set 命令包含了很多变量,并且包含用户自定义的变量 3.7.2.3 a=111 //自定义变量 3.7.2.4 set 用来显示本地变量,env 用来显示环境变量, export 用来显示和设置环境变量 3.7.3 export 全局变量 3.7.3.1 export aming=linux 3.7.3.2 echo $aming 3.7.3.3 bash //进入子bash 3.7.3.4 echo $aming 3.7.3.5 unset aming //取消环境变量 3.8 环境变量的配置文件 3.8.1 系统层次的 3.8.1.1 /etc/profile 用户环境变量,交互,登录时才执行 3.8.1.2 /etc/bashrc 用户不用登录,执行shell就失效 3.8.2 系统层次的 3.8.2.1 ~/.bashrc 3.8.2.2 ~/.bash_profile 3.8.2.3 ~/.bash_history 3.8.2.4 ~/.bash_logout 3.8.3 PS1变量 3.8.3.1 PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;36m\]\w\[\033[00m\]\$' 3.8.3.2 a='a$bc' 3.8.3.3 a=a"$b"c 3.8.3.4 . .bash_profile 和 source .bash_profile, 此处.和source都是加载使生效的作用 3.8.3.5 [登录的用户@主机名-所在的目录(最后的层级)] 3.8.3.6 PS1='' //修改PS1 3.8.3.7 echo $PS1 //打印PS1的值 3.8.4 登录的用户@主机名-所在的目录(最后的层级) 3.8.5 特殊字符 3.8.5.1 * //任意个任意字符 3.8.5.2 ? //任意一个字符 3.8.5.3 # //注释 3.8.5.4 \ //脱义字符 e.g. c=\$a\$b ehco c 3.8.5.5 | //管道字符 3.9 cut 和 sort命令 3.9.1 cat /etc/passwd |head -2 |cut -d ":" -f 1-3 //-d表示分割;-f表示段 3.9.2 cut -d//分隔符; -f//指定段号; -c//指定第几个字符 3.9.3 sort -n//以数字排序(字母认为是0); -r//反序; -t//分隔符 -kn1/-kn1,n2 3.10 wc ,uniq, split 和 tee 命令 3.10.1 wc -l //统计行数; wc -m//统计字符数; wc -w//统计词 3.10.2 cat -A 1.txt //输出行中假设为123$, 其中$代表换行符 3.10.3 uniq 去重(需要先排序) uniq -c//统计行数 3.10.3.1 sort 1.txt |uniq -c 3.10.4 split -b//按字节为单位进行切割 split -l//按行数进行切割 3.10.5 LC_ALL=C //为了去除所有本地化的设置,让命令正确的执行 3.10.6 tee 重定向,并把之前的结果打印在屏幕上 3.10.6.1 sort 1.txt |uniq -c |tee a.txt 3.10.6.2 tee -a //表示追加 3.10.6.3 >a.txt //清空a.txt 3.10.7 tr替换字符 3.10.7.1 echo "aminglinux" |tr '[al]' '[AL]' 3.11 一些特殊字符 3.11.1 $ 变量前缀 !$ 表示取前一次执行的命令 3.11.2 ;多条命令写到一行,用分号分割 3.11.3 ~ 用户家目录,正则中表示匹配符 3.11.4 &放到命令后面,会把命令丢到后台 3.11.5 >重定向 >>追加重定向 2>错误重定向 2>>追加错误重定向 &>将错误的和正确的全部重定向到一个文件中 3.11.6 [] 指定一个字符中的一个 3.11.7 || 或者 && 并且 3.11.8 [-d aminglinux] || mkdir aminglinux //-d判断是否是一个目录且是否存在
【Linux系列】【基础版】第三章 Shell基础知识
原创
©著作权归作者所有:来自51CTO博客作者AIChannel的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
第三章 信息系统基础知识
定义:泛指手机、存储、处理、传播各种信息具有完整功能的集合体。现代的信息系统不像以前的了,它结合计算机技术和网络技术,形成了以计算机技术为
系统架构 信息系统基础知识 数据 数据库 结构化 -
第三章 Web基础
第三章 Web基础
数据库 Goland 游戏服务器 Web服务器 区块链 -
【爬虫第三章】 Python基础
在上述代码中,我们将属性_name的名称改为__name,表示它是一个私有的属性,外部代结果为’x is greater than 5’。
python 爬虫 数据挖掘 Python 字符串