1.Shell有哪些高级操作?
-
Shell 脚本编写:Shell 脚本是一系列命令和控制结构的集合,可以用于自动化任务、批量处理文件、系统管理等。使用 Shell 脚本可以编写复杂的任务流程,并实现自动化处理。
-
管道和重定向:Shell 支持使用管道
|
将一个命令的输出发送到另一个命令的输入,从而实现数据流的传递和处理。同时,Shell 还支持重定向操作符<
(输入重定向)、>
(输出重定向)、>>
(追加输出)、2>
(错误输出重定向)等,可以将命令的输入输出重定向到文件或其他地方。 -
通配符和正则表达式:Shell 支持使用通配符(如
*
、?
)进行文件名模式匹配,以及使用正则表达式进行更灵活的文本匹配和处理。 -
条件语句和循环结构:Shell 支持类似于其他编程语言的条件语句(如
if
、case
)和循环结构(如for
、while
),可以根据条件执行不同的命令或循环执行某个命令块。 -
函数定义和调用:Shell 允许定义和调用函数,可以将一系列命令封装到函数中,以便复用和模块化代码。
-
作业控制:Shell 允许在后台运行命令,并提供作业控制功能,可以将任务放入后台执行、挂起或恢复作业,并查看当前运行的作业列表。
-
环境变量和别名:Shell 允许设置和使用环境变量,这些变量可以在 Shell 会话中传递和共享,影响命令行工具的行为。此外,Shell 还支持定义别名,将长命令或常用命令简化为简短的别名以提高工作效率。
-
远程操作和 SSH:Shell 支持使用 SSH(Secure Shell)协议进行远程登录和操作其他计算机,可以在远程系统上执行命令、传输文件等。
2.对一个命令不熟悉,有哪些方法可以获得帮助?
-
--help 选项:许多命令都提供了
--help
选项,可以在命令后面添加该选项来获取简要的帮助信息,包括命令的用法、选项和参数说明。command --help
-
man 手册:几乎所有的 Linux 命令都有对应的 man(manual)手册页面。可以使用
man
命令加上要查询的命令名称来查看完整的命令手册。例如:man command
在 man 手册页面中,可以找到命令的详细说明、选项列表、用法示例等。
-
info 命令:一些命令的更详细的文档可能会在 info 页面中提供。可以使用
info
命令加上命令名称来查看更详细的文档。例如:info command
type command
-
网络搜索:如果以上方法都无法满足需求,还可以通过互联网搜索引擎搜索命令的用法和示例。通常可以在各种技术论坛、文档网站和博客中找到对命令的解释和用法示例。
3.在CentOS7系统桌面环境下进行如下操作:设置系统时间、更换桌面背景、工作区切换、目录的切换、文件的查看等,比较该系统和Windows系统的基本操作区别。
-
设置系统时间:
- CentOS 7:在桌面右上角的系统托盘中,点击时间显示区域,然后选择“Date & Time Settings”(日期和时间设置),可以调整系统时间和时区。
- Windows:在任务栏中右键点击系统时间,选择“Adjust date/time”(调整日期/时间),然后可以进行相应设置。
-
更换桌面背景:
- CentOS 7:右键点击桌面空白区域,选择“Change Desktop Background”(更改桌面背景),然后可以选择已有的壁纸或上传新的图片作为桌面背景。
- Windows:右键点击桌面空白区域,选择“Personalize”(个性化),然后在“Background”(背景)选项中可以更改桌面背景。
-
工作区切换:
- CentOS 7:通常使用桌面环境自带的工作区切换功能,例如 GNOME 桌面环境中,可以使用桌面左侧的“Activities”按钮或者键盘快捷键(默认是“Super”键+方向键)进行工作区切换。
- Windows:Windows 系统通常不提供类似的工作区切换功能,但可以通过第三方软件实现类似的功能。
-
目录的切换:
- CentOS 7:可以使用终端(Terminal)应用程序,在命令行中使用
cd
命令来切换目录,例如cd /path/to/directory
。 - Windows:Windows 系统中可以使用文件资源管理器(File Explorer)来进行目录切换,通过点击左侧导航栏中的目录或手动输入路径来切换目录。
- CentOS 7:可以使用终端(Terminal)应用程序,在命令行中使用
-
文件的查看:
- CentOS 7:可以使用终端中的命令行工具,如
ls
、cat
、less
等来查看文件内容。 - Windows:可以使用记事本或其他文本编辑器来打开和查看文件内容,也可以使用资源管理器进行文件的预览和查看。
- CentOS 7:可以使用终端中的命令行工具,如
4. 在CentOS7系统下,分别在远程SSH终端以及本地桌面环境下以多用户方式登录(登录的用户分为普通用户及root用户),再在不同终端关闭系统,观察此时多用户在线状态下普通用户及root用户系统关机的提示及状态变化情况。
-
远程SSH终端登录:
- 如果通过 SSH 远程登录到 CentOS 7 系统,每个登录的用户都会有一个独立的终端会话。如果在其中一个 SSH 终端中以 root 用户身份执行关机命令(如
shutdown
或poweroff
),系统将会向所有当前登录用户发送关机提示,并开始关机倒计时。其他登录用户会看到类似以下的提示信息:Broadcast message from root@your_server (/dev/pts/x) at HH:MM ... The system is going down for shutdown in NN minutes!
在倒计时结束前,所有用户都有机会保存未保存的工作并退出系统。倒计时结束后,系统将关闭。
- 如果在普通用户身份下执行关机命令,通常会提示权限不足,并拒绝操作。
- 如果通过 SSH 远程登录到 CentOS 7 系统,每个登录的用户都会有一个独立的终端会话。如果在其中一个 SSH 终端中以 root 用户身份执行关机命令(如
-
本地桌面环境登录:
- 在本地桌面环境登录时,可以同时以不同的用户身份登录到系统中,包括普通用户和 root 用户。如果一个用户以 root 身份登录,而另一个用户以普通用户身份登录,当其中一个用户执行关机操作时,系统会弹出确认关机的提示框。在这种情况下,其他用户可以选择立即关机或取消关机。
- 如果 root 用户执行关机操作,通常会立即关闭系统,而不会出现倒计时或警告。
5.在CentOS7系统的桌面环境下,进行系统的语言格式由中文版转换成英文版的重新设置操作。设置成功后观察设置前后的远程终端的输出变化,即把原来终端的中文输出转换成英文输出的格式。
-
打开终端:在桌面环境中,按下
Ctrl + Alt + T
可以打开终端。 -
使用 root 权限:执行以下命令以获得 root 权限:
sudo su -
- 安装英文语言包(如果尚未安装):
yum install langpacks-en -y
- 配置系统语言为英文:
localectl set-locale LANG=en_US.UTF-8
- 重新登录或重新启动系统以使更改生效。
6. 在CentOS7系统的桌面环境下,打开安装系统时的映像文件光盘,查找有关ftp文件的RPM软件包,选择其一并进行安装。
sudo mount -o loop /path/to/your/image.iso /mnt
其中,/path/to/your/image.iso
是你映像文件的路径,/mnt
是挂载点。
-
浏览光盘内容:
- 打开文件管理器,导航到挂载的光盘目录(通常在
/mnt
目录下),你应该能够看到安装映像文件的内容。
- 打开文件管理器,导航到挂载的光盘目录(通常在
-
查找FTP软件包:
- 在光盘内容中,通常有一个
Packages
目录,里面包含了所有安装包的 RPM 文件。你可以在其中查找包含 FTP 相关软件的 RPM 包。可以使用文件管理器的搜索功能或手动浏览文件来查找。
其中,sudo rpm -ivh package_name.rpm
package_name.rpm
是你要安装的 RPM 软件包的名称。
如果光盘已经关闭,这一步骤可能会提示光盘忙碌,这意味着有其他进程正在使用它。确保你已经关闭了所有文件管理器窗口,然后再次尝试卸载。sudo umount /mnt
- 在光盘内容中,通常有一个