RHEL常用Linux命令操作

RHEL常用Linux命令操作

前言

最近女朋友选修了Linux操作系统基础的选修课,看了下她们的实验报告,自己大一的时候也是从RedHat入门的,大二做项目时,避免不了时常与云服务器、CentOS、Linux命令打交道,现在就借这个机会复习一下,整理下常用的命令操作。

准备

  • 准备Linux操作系统平台,课程老师会提供安装包和教程,傻瓜式安装就ok,新手可能在配置网络时有点问题,最简单就是直接桥接;我就不装了,就直接用阿里的服务器来示例,操作系统是CentOS,都差不多的;
  • 修改Linux下shell显示用户名和主机名:
hostnamectl set-hostname gongtao

查看用户名:

hostnamectl status

在这里插入图片描述
重启:

reboot

或者按照这种方式:Linux下shell显示用户名和主机名

项目一

(1) 启动计算机,利用root用户登录到系统,进入字符提示界面。
在这里插入图片描述
(2) 用pwd命令查看当前所在的目录。

pwd

在这里插入图片描述

(3) 用ls命令列出此目录下的文件和目录。

ls

(4) 用-a选项列出此目录下包括隐藏文件在内的所有文件和目录。

ls -a

在这里插入图片描述
(5) 用man命令查看ls命令的使用手册。

man ls
  • q:退出
  • 空格:向下翻页

在这里插入图片描述
(6) 在当前目录下,创建测试目录test。

#创建test目录
mkdir test
#查看
ls

(7)利用ls命令列出文件和目录,确认test目录创建成功。

(8)进入test目录,利用pwd查看当前工作目录。

#进入test目录
cd test
#查看当前工作目录
pwd

在这里插入图片描述
(9)利用touch 命令,在当前目录创建一个新的空文件newfile。

#创建文件
touch newfile
#查看
ls -l(简写:ll)

在这里插入图片描述
(10)利用cp命令复制系统文件/etc/profile到当前目录下。

#复制文件: ./代表当前目录
cp /etc/profile ./

在这里插入图片描述
(11)复制文件profile到一个新文件profile.bak,作为备份。

#复制文件,进行备份,-p参数表示保留源文件或目录的所有属性
cp -p profile profile.bak

在这里插入图片描述
(12)用ls -l命令以长格形式列出当前目录下的所有文件,注意比较每个文件的长度和创建时间的不同。

#列出文件长信息
ls -l(等效:ll)

(13)用 less 命令分屏查看文件 profile 的内容,注意练习 less 命令的各个子命令,如 b、p、q 等,并对then关键字查找。

less命令 – 分页显示工具
浏览文字档案的内容,用less命令显示文件时,PageUp键向上翻页,PageDown键向下翻页,要退出less程序,应按Q键。
less的作用与more十分相似,不同点为less命令允许用户向前或向后浏览文件,而more命令只能向前浏览 。
语法格式:less [参数] [文件]
常用参数:
-b 置缓冲区的大小
-e 当文件显示结束后,自动离开
-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
-g 只标志最后搜索的关键词
-i 忽略搜索时的大小写
-m 显示类似more命令的百分比
-N 显示每行的行号
-o 将less 输出的内容在指定文件中保存起来
-Q 不使用警告音
-s 显示连续空行为一行
-S 在单行显示较长的内容,而不换行显示
-x 将TAB字符显示为指定个数的空格字符
命令内部操作:
b 向后翻一页
d 向后翻半页
h 显示帮助界面
Q 退出less 命令
u 向前滚动半页
y 向前滚动一行
空格键 滚动一页
回车键 滚动一行

示例:

#分页查看文件
less profile
#搜索关键字then
#在阅览模式下按下esc进入命令模式,输入
:/then

在这里插入图片描述
在这里插入图片描述
(14)用grep命令在profile文件中对关键字then进行查询,并与上面的结果比较。

grep是“global search regular expression and print out the line”的简称,意思是全面搜索正则表达式,并将其打印出来。这个命令可以结合正则表达式使用,它也是linux使用最为广泛的命令。

grep命令的选项用于对搜索过程的补充,而其命令的模式十分灵活,可以是变量、字符串、正则表达式。需要注意的是:一当模式中包含了空格,务必要用双引号将其引起来。

linux系统支持三种形式的grep命令,大儿子就是grep,标准,模仿的代表。二儿子兴趣爱好多-egrep,简称扩展grep命令,其实和grep -E等价,支持基本和扩展的正则表达式。小儿子跑的最快-fgrep,简称快速grep命令,其实和grep -F等价,不支持正则表达式,按照字符串表面意思进行匹配。

less profile | grep then

在这里插入图片描述
(15)给文件profile创建一个软链接lnsprofile和一个硬链接lnhprofile。
命令介绍:
在这里插入图片描述

#创建软链接
ln -s profile lns_profile
#创建硬链接,-v显示创建过程
ln profile lnh_profile -v

在这里插入图片描述
(16)长格形式显示文件profile、lnsprofile和lnhprofile的详细信息。注意比较3个文件链接数的不同。

ls -l

在这里插入图片描述
(17)删除文件 profile,用长格形式显示文件 lnsprofile 和 lnhprofile 的详细信息,比较文件 lnhprofile 的链接数的变化。

#删除profile文件
rm -f profile
#长格式查看文件,对比
ls -l

发现:硬链接数量减少1个,软链接失效
在这里插入图片描述
(18)用less命令查看文件lnsprofile的内容,看看有什么结果。
发现:源文件删除后,软链接失效
在这里插入图片描述
(19)用less命令查看文件lnhprofile的内容,看看有什么结果。

less lnh_profile

在这里插入图片描述
(20)删除文件lnsprofile,显示当前目录下的文件列表,回到上层目录。

#删除文件
rm -f lns_profile
#查看列表
ls -l
#返回上层目录
cd ../

在这里插入图片描述
(21)用tar命令把目录test打包。

tar -cvf test.jar test/

在这里插入图片描述
(22)用gzip命令把打好的包进行压缩。

gzip test.jar

在这里插入图片描述
(23)把文件test.tar.gz改名为backup.tar.gz。
注意:上面文件名字打错了,纠正为test.tar即可

mv test.jar.gz backup.tar.gz

在这里插入图片描述
(24)显示当前目录下的文件和目录列表,确认重命名成功。

ls -l

在这里插入图片描述
(25)把文件backup.tar.gz移动到test目录下。

#移动文件到test目录下
mv backup.tar.gz test/
#列出当前文件夹下的文件或者目录信息
ll
#切换到test目录下
cd test/
#列出test目录下的文件
ls -l

图见26问
(26)显示当前目录下的文件和目录列表,确认移动成功。
在这里插入图片描述
(27)进入test目录,显示目录中的文件列表。
同25、26
在这里插入图片描述
(28)把文件backup.tar.gz解包。

#第一步
gzip -drv backup.tar.gz 
#第二步
tar -xvf backup.tar -C ~/test/
#也可直接这样
tar -xzvf backup.tar.gz -C ~/test/

在这里插入图片描述
(29)显示当前目录下的文件和目录列表,复制test目录为testbak目录作为备份。

#1、复制目录,使用cp的-r属性
cp -r -p test/ testback
#2、查看当前目录结构
ls -l
#3、查看testback目录
ls -l testback/
#4、查看test目录
ls -l test/

在这里插入图片描述
(30)查找root用户自己主目录下的所有名为newfile的文件。

#使用强大的find命令
find $HOME -name newfile

注意:$HOME表示当前用户的主目录,可以在终端输入echo $HOME查看当前用户的主目录。
在这里插入图片描述
(31)删除test子目录下的所有文件。

rm -rdf ~/test

(32)利用rmdir 命令删除空子目录test。 回到上层目录,利用rm命令删除目录test和其下所 有文件。
不好意思,看错题了,上一条命令直接删除了整个test目录以及其下所有文件;下面说下题目要求的操作:

#31题删除二级test目录下的所有文件
rm -f ~/test/test/*
#删除空的test目录
rmdir ~/test/test/
#32题
rm -rdf ~/test

(33)find命令的使用。
① 在/var/lib目录下查找所有文件其所有者是games用户的文件。

find /var/lib/ -user games

② 在/var 目录下查找所有文件其所有者是root用户的文件。

find /var/ -user root

(34)grep命令的使用。
① 显示/etc/passwd文件中包含test用户信息,将结果保存到/tmp/test.info文件中。

#使用管道和重定向
cat /etc/passwd | grep test >> /tmp/test.info

② 查找/etc目录下以http开头的文件,保存结果到/tmp/fhttp.file;

ls /etc/ | grep ^http > /tmp/fhttp.file

项目二

在Linux下练习c编程,使用gcc编译c文件并执行。
1、使用vim编辑器创建并编写c程序:

vim test.c

vim三大模式:
在这里插入图片描述
进入之后,按照上图方式,按下字母a进入insert模式,写入c代码:

#include<stdio.h>
int main(){
	printf("Lsy, I Love You!\n\n");
	return 0;
}

按下esc键进入命令模式,输入:wq保存并退出vim编辑器。
在这里插入图片描述
2、查看刚才的test.c文件,并进行编译:

#查看文件
cat test.c
#编译
gcc test.c -o test

生成的test(绿色的)就是可执行的文件
在这里插入图片描述
3、执行文件:

./test

在这里插入图片描述

补充

项目二中RHEL可能没有gcc这个命令,这时我们可以yum安装gcc命令,

yum install gcc -y

在这里插入图片描述
但是可气的是,红帽也没有配置yum源,所以只能辛苦大家自己配置了。大家就看这了吧:Redhat7配置yum源(本地源和网络源)

结束

OK啦,这次就到这里吧,希望有用,sleeping!!!

发布了19 篇原创文章 · 获赞 24 · 访问量 4629

猜你喜欢

转载自blog.csdn.net/qq_41337581/article/details/100753807