Shell中必须掌握的基础应用
2020-07-21 10:03
399 查看
本案例要求熟悉Linux Shell环境的特点,主要练习以下操作:
- 切换用户的Shell环境
- 练习命令历史、命令别名
- 重定向标准输入/输出/错误输出
- 管道操作实践
步骤一:切换用户的Shell环境
什么是shell?
Shell是在Linux内核与用户之间的解释器程序,通常指的是bash,负责向内核翻译及传达用户/程序指令。
shell的使用方式:
1.交互执行指令:人工干预,执行效率底。
2.非交互执行指令:安静地在后台执行,执行效率高,方便写脚本。
若需要临时使用另一种Shell环境,可以直接执行对应的Shell解释器程序,比如只要执行ksh可以切换到ksh命令行环境。
1. [root@dyy ~]# yum -y install ksh //若缺少ksh请先安装ksh包 2. .. .. 3. [root@dyy ~]# cat /etc/shells 4. /bin/sh 5. /bin/bash 6. /sbin/nologin 7. /bin/tcsh 8. /bin/csh 9. /bin/ksh //确认当前系统已识别ksh 10. 11. [root@dyy ~]# ksh //进入ksh环境 12. [root@sdyy]~# exit //返回到切换前的bash环境
若希望修改用户的登录Shell,管理员可以直接通过usermod(或useradd)命令设置。比如,以下操作可将用户zhangsan的登录Shell改为/bin/ksh:
1. [root@dyy ~]# usermod -s /bin/ksh zhangsan //执行修改操作 2. [root@dyy ~]# grep 'zhangsan' /etc/passwd 3. zhangsan:x:516:516::/home/zhangsan:/bin/ksh //修改后
步骤二:快捷键与Tab键补齐,常见快捷键如表-1所示
[步骤三:练习命令历史
1)检查历史命令的容量。
默认记录1000条,通过全局变量HISTSIZE设置,对所有用户有效:
1. [root@dyy ~]# grep HISTSIZE /etc/profile 2. 3. HISTSIZE=1000
查看已为当前用户记录的历史命令条数:
1. [root@dyy ~]# history | wc -l 2. 1000
2)查看历史命令列表。
列出最近执行的10条历史命令:
1. [root@dyy ~]# history | tail 2. 1028 grep 'zhangsan' /etc/passwd 3. 1029 cat /etc/redhat-release 4. 1030 usermod -s /bin/tcsh zhangsan 5. 1031 grep 'zhangsan' /etc/passwd 6. 1032 su - zhangsan 7. 1033 echo 1234567 | passwd --stdin zhangsan 8. 1034 su - zhangsan 9. 1035 grep HISTSIZE /etc/profile 10. 1036 history | wc -l 11. 1037 history | tail
3)调用指定的历史命令。
重新执行历史命令列表中的第1028条操作:
1. [root@dyy ~]# !1028 2. grep 'zhangsan' /etc/passwd 3. zhangsan:x:516:516::/home/zhangsan:/bin/bash
4)清空历史的命令
1. [root@dyy ~]# history -c //清空自己的历史命令 2. [root@dyy ~]# > ~/.bash_history //清空记录文件 3. [root@dyy ~]# history //再次检查历史命令列表 4. 42 > ~/.bash_history 5. 43 history
步骤四:管道操作实践
借助于管道符“|”,可以将一条命令的标准输出交给另一条命令处理,在一条命令行内可依次使用多个管道。
1)统计/etc/目录下资料的数量。
1. [root@dyy ~]# ls -l /etc | wc -l 2. 254
2)列出Yum库里名称中含cluster的软件包。
1. [root@dyy ~]# yum list | grep cluster 2. cluster-cim.x86_64 0.12.1-7.el5 RHEL5-Cluster 3. cluster-snmp.x86_64 0.12.1-7.el5 RHEL5-Cluster 4. … …
相关文章推荐
- 安装Ubuntu后必须要做的几件事(一)--基础应用篇
- 每一个软件开发人员绝对必须掌握的关于 Unicode 和字符集的最基础的知识
- 学习日语必须要掌握的日本文化基础知识14
- Java必须掌握的基础知识
- Flutter基础(四)开发Flutter应用前需要掌握的Basics Widget
- ubuntu学习笔记——shell基础应用(1)
- shell 基础应用
- shell脚本学习之必须了解的基础命令
- AJAX应用中必须要掌握的重点知识(分享)
- shell脚本编程基础篇——语法和应用
- 《云计算》Shell的基础应用(3)
- 【shell编程基础2】shell组合应用之一:重定向和逻辑
- Shell脚本语言必须掌握的四大命令!不会你就Low了!
- 初学shell(必须掌握的20条指令)
- 坚持#第220天~零基础自学云计算基础语言应用41~43节and Shell的1~2节
- 《云计算》Shell的基础应用(附有案例)
- SATA分区基础知识,个人认为必须掌握的要点
- Shell基础应用
- 设计师必须要掌握的版式基础