最近女朋友选修了Linux操作系统基础的选修课,看了下她们的实验报告,自己大一的时候也是从RedHat入门的,大二做项目时,避免不了时常与云服务器、CentOS、Linux命令打交道,现在就借这个机会复习一下,整理下常用的命令操作。
hostnamectl set-hostname gongtao
查看用户名:
hostnamectl status
reboot
或者按照这种方式:Linux下shell显示用户名和主机名
(1) 启动计算机,利用root用户登录到系统,进入字符提示界面。
(2) 用pwd命令查看当前所在的目录。
pwd
(3) 用ls命令列出此目录下的文件和目录。
ls
(4) 用-a选项列出此目录下包括隐藏文件在内的所有文件和目录。
ls -a
man ls
#创建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 ../
tar -cvf test.jar test/
gzip test.jar
(23)把文件test.tar.gz改名为backup.tar.gz。
注意:上面文件名字打错了,纠正为test.tar即可
mv test.jar.gz backup.tar.gz
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
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
项目二中RHEL可能没有gcc这个命令,这时我们可以yum安装gcc命令,
yum install gcc -y
但是可气的是,红帽也没有配置yum源,所以只能辛苦大家自己配置了。大家就看这了吧:Redhat7配置yum源(本地源和网络源)
OK啦,这次就到这里吧,希望有用,sleeping!!!