Oracle Linux 简介:Shell 和命令行

您所在的位置:网站首页 是linux的缺省shell Oracle Linux 简介:Shell 和命令行

Oracle Linux 简介:Shell 和命令行

#Oracle Linux 简介:Shell 和命令行| 来源: 网络整理| 查看: 265

注:

此教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure 免费层。 它使用 Oracle Cloud Infrastructure 身份证明、租户和区间示例值。完成实验室后,请使用特定于您的云环境的这些值替换这些值。 Oracle Linux 简介:Shell 和命令行 简介

此实验室探讨了管理 Oracle Linux 的入门任务。

目标

在此实验室中,您将:

使用 shell 和命令行执行命令。 使用文件和目录。 使用 vim 编辑文件。 了解文件权限。 使用 SSH 浏览远程访问。 监视系统进程。 需要做哪些准备? 安装了 Oracle Linux 8 的系统 安装了 Oracle Linux 8 以远程访问的其他系统 使用 shell 和命令行执行命令。 概览

在本节中,您将使用 shell 元字符来简化命令、结构和输出。bash 是缺省 shell。您将查看和设置值以管理命令行历史记录。

验证默认 shell bash 是否正在运行,请在 Oracle Linux 上使用 echo 命令显示 SHELL 变量的内容。 echo $SHELL 使用波浪号 (~) 元字符和 cd 命令确保位于用户的起始目录中。 cd ~ 检查 history 命令维护的当前命令行数。 echo $HISTFILESIZE $HISTSIZE 使用以下命令将 HISTSIZE 设置为 20。 HISTSIZE=20 确认打开的终端窗口大小的命令行历史记录设置为 20。 echo $HISTSIZE 查看 history 命令的页面输出。注:以下 history 命令输出行系列可能无法根据您输入的实际命令以及存储在 ~/.bash_history 文件中的实际命令来匹配输出。 history | less

按 q 可退出上一个命令。

查看历史记录数据库中的前 10 个命令。

history 10 使用 -c 选项可清除以前的历史记录。 history -c 再次使用 history 命令查看清除的历史记录。 history 使用文件和目录 概览

在本节中,将使用文件和目录访问命令。

您将在目录中执行练习。

使用 pwd 命令显示当前的工作目录。 pwd 通过运行 ls 命令显示当前工作目录内容的长列表。 ls -l 使用 ls 命令显示当前目录中的文件类型。 ls -F 如果临时目录尚不存在,请使用 mkdir 命令创建一个名为 temp 的目录。 mkdir temp 使用 cd 命令将目录更改为临时目录。 cd temp 使用 pwd 命令显示当前的工作目录。 pwd 使用 ls 命令在根目录下显示文件和目录。 ls / 使用 cd 命令返回起始目录。 cd ~ 使用 cd 命令将目录更改为父目录。 cd .. 使用 pwd 命令显示当前的工作目录。 pwd 使用 cd 命令返回起始目录。 cd - 使用 pwd 命令显示当前的工作目录。 pwd 使用 echo 和重定向命令创建一个名为 myfile 的新文件。 echo hello world > myfile 使用 ls 命令验证新 myfile 文件已创建。 ls 使用 cat 命令显示 myfile 文件的内容。 cat myfile 使用 cp 命令复制 myfile 文件。 cp myfile myfile2 使用 ls 命令显示当前工作目录内容的长列表。 ls -l 使用 file 命令显示 myfile2 文件的文件类型。 file myfile2 使用 cat 命令显示 myfile2 的文件内容。 cat myfile2 使用 cp 命令将 myfile2 文件复制到 temp 目录。 cp myfile2 temp/ 使用 ls 命令显示 temp 目录的内容。 ls -l temp/ 使用 mv 命令重命名 temp 目录。 mv temp temp2 使用 ls 命令显示当前目录中的文件类型。 ls -F 使用 cp 命令将 temp2 目录中的所有文件复制到新目录 temp3。 cp -R temp2 temp3 使用 ls 命令递归显示所有文件。 ls -R 使用 mkdir 命令创建新的 temp 目录。 mkdir temp 使用 touch 命令创建一个名为 alpha 的新文件。 touch alpha 使用 ls 命令显示当前目录的内容。 ls 使用 rm 命令删除 alpha 文件。 rm alpha 使用 rmdir 命令删除 temp 目录。 rmdir temp 使用 ls 命令显示当前目录中的文件类型。 ls -F 从起始目录中,使用 find 命令查找名为 myfile 的所有文件。 find ~ myfile 从起始目录中,使用 find 命令查找名为 temp2 的所有文件。 find ~ temp2 使用 vim 编辑文件 概览

在本节中,您将使用 vim 编辑器,该编辑器是 Oracle Linux 8 的默认编辑器。

从主目录键入 vim 命令。 vim 按 i 键可更改为模式并插入以下文本。 Hello World What is your Waht id today's date?`

将文本附加到行 "What is your",按 Esc 键进入命令模式。使用 h、j、k、l 或箭头键导航到行的最后一个字符。按 a 键附加下一个字符串“名称”并插入空格。

将 d 字符替换为当前日期的 Waht id 行中的 s,按 Esc 返回命令模式。然后通过按 j 或向下箭头键将光标移动到第三行。这会将光标向下移动。要将光标移到左侧,请按 h 或左箭头键。将光标放在字符串“id”中的 d 字符上。按 r 键,然后插入字符 s。这会将字符 d 替换为字符 s。

将单词 Waht 更改为 What,按 Esc 键并将光标移动到第三行。将光标放在字 Waht 的字符 'a' 上并执行 cw 命令。输入文本帽子。这会将整词 Waht 更改为什么。完成修改单词后按 ESC。

复制并粘贴第 Hello World 行,按 ESC 返回命令模式。将光标移至 Hello World 行的开头。执行 yy 命令复制字符串。然后将光标移动到同一行的末尾,并执行 p 命令来粘贴字符串。复制并粘贴整个行。

删除附加的 "Hello World" 行,按 Esc 进入命令模式。将光标移至第二行“Hello World”的开头并执行 dd 命令。将删除整个行。

要搜索字符串 "What",请按 Esc 进入命令模式并按正斜杠 / 键。输入文本“What”并按 Enter。游标自动移动到遇到的文件中的第一个字符串。请注意,"/What" 显示在终端窗口屏幕底部。

搜索下次出现的同一字符串,按 n。游标将移动到文件中的第二个字符串。

通过显示行号定制会话,按 Esc 进入命令模式。然后输入 :set nu 命令并按 Enter。请注意,终端窗口屏幕底部显示了 :set nu。

删除行号,按 Esc 进入命令模式。接下来,键入 :set nonu 命令并按 Enter 键。行号将消失。

退出并保存包含更改的文件,按 Esc 以进入命令模式。然后键入 :w intro.txt 并按 Enter。请注意,:q 显示在终端窗口屏幕的底部。文件已保存,命令提示符将返回。

了解文件权限 概览

在此部分中,您将查看和更改文件所有权。您还将查看和更改文件的权限。

使用 pwd 命令确保位于起始目录中。 pwd 要查找现有目录的所有者,请使用 ls 命令。 ls -ld

现有目录的所有者显示在输出的第三列中。

使用 ls 命令标识 temp2 目录中内容的所有者。 ls -l temp2 将 temp2 目录的所有权更改为 root 用户。使用 sudo su 命令切换到 root 用户 / 角色并运行更改所有者 chown 命令。 sudo su chown oracle temp2 确认 temp2 目录的内容的所有权。通过使用递归 -R 选项再次运行 chown 命令将其内容的用户和组所有权更改为 root 和 root。 ls -l chown -R root:root temp2 ls -lR temp2 使用 exit 命令退出 su。 exit 确保系统上的 umask 值设置为 0022。要进行验证,请运行 umask 命令。 umask 如果未将 umask 设置为 0022,则通过运行 umask 命令将 umask 值设置为 0022。 umask 0022 使用 mkdir 命令在 temp3 目录中创建名为 perm 的新目录。 mkdir temp3/perm 使用 ls 命令转到 etc 目录并列出 Oracle Linux 的以下四个文件:group、motd、shadow、fstab。 cd /etc ls -l group motd shadow fstab

注意:Oracle Linux 对影子文件没有权限。

将四个文件复制到 ~/temp3/perm 目录。shadow 文件将无法复制。 cp group motd shadow fstab ~/lab/perm cp: cannot open ’shadow’ for reading: Permission denied 转到 temp3 目录并验证其 ~/temp3/perm 目录的内容。 cd ~/temp3 ls -l perm 使用 cd 命令将目录更改为起始目录。 cd 创建一个名为 test 的新目录和一个名为 test1 的新文件。 mkdir test touch test/test1 检查新文件 test1 的缺省权限。 ls –l test/test1 检查新目录 test 的默认权限。 ls –ld test 使用 chmod 命令和符号模式,将组权限集的写 (w) 权限添加到 motd 文件中。 chmod g+w temp3/perm/motd ls -l temp3/perm

注:符号模式使用字母和符号的组合来添加或删除每种用户类型的权限。

使用八进制模式,将 motd 文件的权限更改为 -rwxrw--。 chmod 760 temp3/perm/motd ls -l temp3/perm

八进制模式是使用基数 8 的值,在本例中为 0-7。

使用八进制模式,为名为 group 的文件上的其他用户添加写入 (w) 权限。 chmod 646 temp3/perm/group ls -l temp3/perm 使用 ls 命令标识 motd 文件的 GID 和 UID。 ls -n temp3/perm/motd 使用 mkdir 命令创建一个名为 notes 的新目录。 mkdir notes 在 dir4 目录中创建名为 memo 的新文件。 touch notes/memo ls -l notes/memo 从 notes 目录中的 memo 文件中删除所有者的读取 (r) 权限。可以使用符号模式执行此操作。 chmod u-r notes/memo ls -l notes/memo 使用 cat 命令查看 memo 文件。 cat notes/memo cat: /home/oracle/lab/dir4/memo: Permission denied

注:此操作会失败,因为已从用户中删除读取权限。即使您是组的一部分,也按权限的显示顺序查看权限。

使用 SSH 浏览远程访问 概览

在本节中,将使用远程连接从 host01 登录到其他 Oracle Linux host02。

使用 ssh 命令从 host01 登录到 host02。 ssh host02 验证 sshd 服务是否正在 host02 上运行。使用 rpm 命令验证是否安装了 opensh 软件包。 rpm –qa | grep openssh

rpm 是 RPM 软件包管理器的首字母缩略词,该管理器是在 Oracle Linux 上运行的开放软件打包系统。

使用 systemctl 命令验证 sshd 服务是否已启动。 systemctl status sshd 使用 ls 命令可显示起始目录中所有文件的长列表。 ls –la 使用 hostname 命令显示主机名,以确认您已成功登录到 host02。 hostname 使用 logout 命令关闭到 host02 的 ssh 连接。使用 hostname 命令确认您已返回 host01。 logout hostname 查看用户起始目录中的 .ssh 目录。使用 ls 命令可显示起始目录中所有文件的长列表。 ls –la

注意:请注意,现在有一个 ~/.ssh 目录。

使用 cd 命令转到 .ssh 目录,然后使用 ls 命令查看该目录的内容。 cd .ssh ls

注意:请注意 known_hosts 文件已创建。

使用 cat 命令查看 known_hosts 文件的内容。 cat known_hosts 监视系统进程。 概览

在本节中,您将确定进程标识符 (process identifier, PID)、查看进程树并中止进程。

使用以下 ps 命令列出系统上当前正在运行的进程。 ps 使用 -f 选项可输出 ps 命令的完整列表。 ps -f 使用 -e 选项可打印有关正在运行的每个进程的信息。然后使用 ps 和 wc 命令显示进程的总数。 ps -e ps -e | wc -l 再次使用 ps 命令。 ps -f 打开第二个终端窗口,然后在新终端窗口中执行 ps 命令。

注:查看 Oracle Linux VM 中的 TTY 列,其中控制终端为 pts/1。这是因为您现在同时打开了两个单独的并发终端窗口会话。

ps -f 在第一个终端窗口中,输入 mail 命令: mail 在第二个终端窗口中,使用 ps 和 grep 命令标识邮件进程的 PID。 ps -ef | grep mail

PID 可在名为 PID 的第三列下找到。

在第二个终端窗口中,使用 kill 命令终止邮件进程。 kill 29987

您的 PID 可能与提供的命令不同。

在第二个终端窗口中,输入 tty 命令以标识此终端窗口的名称。名称显示为 /dev/pts/,其中 n 为数字(例如 /dev/pts/2)。 tty 返回到第一个终端窗口。使用 pgrep -t(终端选项)命令查找与第二个终端窗口关联的 PID。 pgrep -t pts/1 在第一个终端窗口中,使用 kill 命令终止第二个终端窗口。 kill 29957

您的 PID 可能与提供的命令不同。

运行以下 kill -l(list 选项)命令以标识信号名称和信号值。 kill -l 9 kill -l kill kill -l 15 kill -l term

注:信号值 9,信号名称为 KILL,对于信号名称中止,信号值为 9。对于信号值 15,信号名称为 TERM,对于信号名称术语,信号值为 15。

在终端窗口中,输入 sleep 命令并将其置于后台。 sleep 600 & 使用 ps 命令确定在该窗口中运行的 bash shell 进程。 $ ps 打开第二个终端窗口。要显示进程树,请使用 bash shell PID(对于 Oracle Linux),请使用 pstree -p (show PIDs option) 命令。 pstree -p 1252

对于 bash shell 进程,您的 PID 可能有所不同。

在第二个终端窗口中,使用带有 bash shell PID 的 kill 命令终止第一个终端窗口。 kill -9 29924

您的 PID 可能与提供的命令不同。

更多学习资源

在 docs.oracle.com/learn 上浏览其他实验室,或者在 Oracle Learning YouTube 渠道上访问更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 以成为 Oracle Learning Explorer。产品文档,请访问 Oracle 帮助中心。

更多学习资源

在 docs.oracle.com/learn 上浏览其他实验室,或者在 Oracle Learning YouTube 渠道上访问更多免费学习内容。此外,访问 education.oracle.com/learning-explorer 以成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心。

标题和版权信息

Introduction to Oracle Linux: Shell and Command Line

F53388-01

February 2022

Copyright © 2021, Oracle and/or its affiliates.



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3