【玩转Redhat Linux 8.0系列 | 实验—使用Bash shell执行命令】

今天继续分享一些Redhat Linux 8.0的知识,记得关注,会一直更新~

访问命令行

任务执行清单

在本实验中,您将使用Bash shell来执行命令。

成果

·使用Bash shell命令行成功运行简单的程序。

·执行用于识别文件类型并显示文本文件部分内容的命令。

·练习使用一些Bash命令历史记录"快捷键"来更高效地重复命令或部分命令。

在你开始之前

以student用户身份并使用student作为密码登录workstation。

在workstation上,运行lab cli-review start脚本来设置干净的实验环境。该脚本还会将zcat文件复制到student的主目录。

clike 复制代码
[student@workstation ~]$lab cli-review start

1、使用date命令来显示当前的日期和时间。

clike 复制代码
[student@workstation~]$date
Thu Jan 2210:13:04 PDT 2019

2、以12小时制显示当前时间(例如,11:42:11AM)。提示:显示该输出的格式字符串为%r。使用+%r参数运行date命令,以12小时制显示当前的时间。

clike 复制代码
[student@workstation -]$date +%r
10:14:87 AM

3、/home/student/zcat的文件类型是什么?可否被人读取? 使用file命令确定其文件类型。

clike 复制代码
[student@workstation~]$file zcat
zcat:POSIX shell script,ASCII text executable

4、使用wc命令和Bash快捷键显示zcat的大小。

wc命令可用于显示zcat脚本中的行数、字数和字节数。使用Bash历史记录快捷键Esc+.(同时按Esc和.键)来重用上一命令中的参数,而不是重新键入文件名。

clike 复制代码
[student@workstation-]$wc Esc+.
[student@workstation -]$wc zcat
51 2991983 zcat

5、显示zcat的前10行。

head命令显示文件的开头。再次尝试使用Esc+.快捷键。

clike 复制代码
[student@workstation~]$head Esc+.
[student@workstation-]$head zcat
#!/bin/sh
#Uncompress files to standard output.
#Copyright(C)2007,2010-2018 Free Software Foundation,Inc.
#This program is free software;you can redistribute it and/or modify
#it under the terms of the GNU General Public License as published by
#the Free Software Foundation;either version 3 of the License,or
#(at your option)any later version.

6、显示zcat文件的后10行。使用tail命令显示zcat文件的后10行。

clike 复制代码
[studenteworkstation~]$tail Esc+.
[studenteworkstation-]$tail zcat
With no FILE,or when FILE is -,read standard input.
Report bugs to <bug-gzip@gnu.org>."
case $1 in
--help) printf '%s\n'"susage" ll exit 1;;
--version)printf'%s\n'"$version"ll exit 1;;
esac
exec gzip -cd "@"

7、利用三次或更少的击键来完全重复上一个命令。

完全重复上一个命令。按向上箭头键👆一次从命令历史记录中往前回滚一个命令,然后按Enter键(使用两次击键),或者输入快捷键命令!!,然后按Enter键(使用三次击键)以运行命令历史记录中的最近一个命令。(两种方法都试一次。)

clike 复制代码
[student@workstation]$!!
tail zcat
with no FILE,or when FILE is -,read standard input.
Report bugs to cbug-gzip@gnu.org>."
case $1 in
--help) printf '%s\n'"susage" l exit 1;;
--version)printf '%s\n'"$version"ll exit 1;;
esac
exec gzip -cd "$@"

8、重复上一命令,但使用-n 20选项来显示文件中的最后20行。使用命令行编辑功能,以通过最少的击键次数来完成此操作。 向上箭头👆可显示上一个命令。Ctrl+A可使光标跳到行首。Ctrl+向右箭头可跳到下一个字,然右添加-n 20选项并按Enter以执行该命令。

clike 复制代码
[studenteworkstation-]$tail -n 20 zcat
-1,--list         list compressed file contents
-q,...quiet         suppress all warnings
-r recursive      operate recursively on directories
-s,--suffix=SUF   use suffix SuF on compressed files
   --synchronous  synchronous output(safer if system crashes,but slower)
-t,--test         test compressed file integrity
-V --verbose      verbose mode
   --help         display this help and exit
   --version      display version information and exit
with no FILE,or when FILE is-,read standard input.
Report bugs to cbug-gzip@gnu.org>."
case $1 in
-help)           printf'%s\n'"susage" l exit 1;exit;;
--version)       printf '%s\n'"$version"ll exit 1;exit;;
esac
exec gzip -cd"$@"

9、使用shell历史记录来再次运行date +%r命令。

使用history命令显示之前命令的列表,以确定要执行的具体date命令。使用!number运行命令,其中number自history命令输出中取用的命令编号。

请注意,您的shell历史记录可能与以下示例不同。根据自己的history命令的输出,确定要使用的命令编号。

clike 复制代码
[student@workstation -]$history
1   date
2   date +%r
3   file zcat
4   wc zcat
5   head zcat
6   tail zcat
7   tail -n 20 zcat
8   history
[student@workstation~]$!2
date +%r
10:49:56 AM

评估

在workstation上,运行lab cli-review grade脚本来确认是否成功完成本练习。

clike 复制代码
[studenteworkstation-]$lab cli-review grade

完成

在workstation上,运行lab cli-review finish脚本来完成本实验。

clike 复制代码
[studenteworkstation~]$lab cli-review finish

本实验到此结束。

总结

在本章中,您学到了:

  • Bash shell是一个命令解释器,它提示交互用户指定Linux 命令。
  • 很多命令都有一个--help选项,可显示用法消息或屏幕。
  • 使用工作区可以更轻松地组织多个应用窗口。
  • 位于顶栏左上角的Activities按钮可提供一个概览模式,帮护用户组织窗口并启动应用。
  • file命令可以扫描文件内容的开头,显示该文件的类型。
  • head和tail命令分别显示文件的开头和结尾部分。
  • 您可以使用Tab补全在键入文件名作为命令的参数时将它们补全。

带你玩转Redhat Linux 8.0
想了解 新技术 9.0
想获取完整的电子档
可👇咨询

相关推荐
MilesShi2 小时前
从 scheduler_tick 到上下文切换:深入解析 Linux 内核的 TIF_NEED_RESCHED 标志设置流程
linux·运维·单片机
我爱云计算5 小时前
K8S详解(5万字详细教程)
linux·运维·云原生·容器·kubernetes
青草地溪水旁7 小时前
Git Bash 中 Git 命令的实用主义指南
git·bash
2301_794333917 小时前
实验室服务器配置|通过Docker实现Linux系统多用户隔离与安全防控
linux·服务器·docker·实验室
荣光波比8 小时前
Nginx 实战系列(一)—— Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装
linux·运维·服务器·nginx·云计算
绿箭柠檬茶10 小时前
Ubuntu 使用 Samba 共享文件夹
linux·运维·ubuntu
工藤新一¹11 小时前
Linux —— 虚拟进程地址空间
linux·运维·服务器·c/c++·虚拟进程地址空间
Aspiresky12 小时前
浅析Linux内核scatter-gather list实现
linux·dma·scatter/gather
奔跑吧 android12 小时前
【linux kernel 常用数据结构和设计模式】【数据结构 3】【模拟input子系统input_dev和input_handler之间的多对多关系】
linux·数据结构·input·kernel·input_dev·input_handler·input_handle
再难也得平12 小时前
Linux初级篇
linux·运维·服务器