推荐一款模拟面试、刷题神器 、从基础到大厂面试题:点击跳转刷题网站进行注册学习
目录
一、操作系统的概念
二、文件的理解
三、ls(显示当前路径中的文件和目录)
1、ls -l或ll(显示更多的属性信息(list))
2、ls -a(显示隐藏文件(all))
3、ll -d(不进入目录,显示目录详细信息)
4、ls -R(递归式列出子目录下的文件)
四、pwd(显示当前用户所处的路径)
五、cd(改变工作目录(change directory))
1、cd .(进入当前目录) cd ..(进入上级目录)
2、cd (绝对路径)/(相对路径)
3、cd ~(回到当前用户的家目录(工作目录))
4、cd -(回到上一次的目录)
六、tree(将文件以树状形式打印出来)
七、touch(创建普通文件)
1、创建普通文件
2、更改文件的最近修改时间
八、stat(文件/文件系统的详细信息显示)
九、mkdir(创建空目录)
1、创建单个空目录
2、创建一串路径
十、rmdir(删除目录)
1、rmdir(用于删除单个空目录)
十一、rm(默认删除普通文件)
1、删除普通文件
2、递归删除目录
3、rm -rf(递归、强制删除目录及其内部文件(force))
十二、man(查看命令/系统调用/C接口的手册)
1、安装man手册
2、查询指令/库函数
3、man手册数字的含义
十三、cp(拷贝)
1、拷贝文件和目录
十四、mv(剪切、重命名)
1、剪切
2、重命名
十五、cat(打印少量文本)tac(逆置打印)
1、cat打印时带行号
2、tac逆置打印
十六、more和less(打印海量数据)
1、打印数据
2、查找匹配
十七、head(打印头部数据)tail(打印尾部数据)
1、打印数据
2、提取1000-1010行数据
十八、date(时间)cal(日历)
1、时间
2、日历
十九、find(精确查找)whereis(近似查找)which(查找指令)
1、find 路径 -name 文件名
2、whereis 文件名(指令)
3、which 指令名
4、alias(指令重命名)
二十、grep(文本内容行过滤工具)
1、grep的用法
2、指令与管道配合
1.1wc -l(获取行数)
1.2sort 文本名(按ASCII码对文本进行排序)uniq(相邻文本去重)
1.3sort和uniq配合管道,进行去重
二十一、zip(打包压缩)unzip(解包解压)tar(打压+解tgz压缩包)
1、zip(打包压缩)
2、unzip(解包解压)
3、tar(tgz包)
4、打包压缩的目的
二十二、常用热键
1、TAB键
2、ctrl+c(终止前台的异常程序。)
3、ctrl+r(搜索历史命令,左右即可选中)
4、ctrl+d(退出当前用户,退出一层)
5、lscpu(查看cpu信息)
6、lsmcm(查看内存信息)
7、df -h谁(查看磁盘使用情况)
8、who(当前linux在线用户)whoami(我是谁)
可在本页面使用ctrl+f进行指令的快速搜索~~~
操作系统是管理软硬件的软件。
操作系统对下需要管理好软硬件资源,通过驱使驱动来管理硬件。
操作系统对上需要为用户提供安全、稳定、高效的运行环境。
文件=文件内容数据+文件属性(元数据)数据,如果我们创建了一个空文件,那么这个空文件将存储于磁盘并占用磁盘空间。
在Linux下,以. 开头的文件,是隐藏文件。
.是当前目录
..是上级目录
ll -d directory
/root/106,在Linux下,/代表路径分隔符
C:\Microsoft\Windows,在Windows下,\代表路径分隔符
一直执行cd ..指令,最后只剩下一个/,这个/被叫做根目录
cd /home/jly/linux/ (绝对路径)
cd ../day02/ (相对路径)
1、普通用户的家目录在/home/xxx
我们可以查看一下/home中的普通用户
2、root用户的家目录是/root
登上云服务器输入pwd指令,出来的就是家目录。
查看/root目录的详细信息
多次cd -会反复在两个目录下跳转。
yum install -y tree 安装tree命令
touch file1.txt
echo " "> file2.txt
>file3.txt
注意touch只能用于创建普通文件,不能创建目录。
touch 同名文件
touch 同名文件即可 更新该文件的最近修改时间(Modify time被修改)
stat 106/text.c
stat命令用于显示文件的状态信息。stat命令的输出信息比ls命令的输出信息要更详细。
[root@VM-4-11-centos ~]# stat 106/text.c
File: ‘106/text.c’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd01h/64769d Inode: 658416 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2022-09-17 21:13:21.098656019 +0800//最近访问
Modify: 2022-09-17 21:13:21.098656019 +0800//最近修改
Change: 2022-09-17 21:13:21.098656019 +0800//最近改动
Birth: -
1、读取文件时,Access time被改变,而Modify、Change time不会被改变
2、修改文件时,三个时间都会被改变
3、修改属性时,Change time被改变,而Access、Modify time不会被改变
mkdir 目录名
mkdir -p a/b/c/d
rmdir 目录名
rm text.c//系统不询问
rm -i text.c//系统询问是否删除
rm -r directory
rm -rf directory
不准写sudo rm -rf /
yum install -y man-pages//需要root权限
man printf//查询printf指令
man 3 printf//查询库函数printf
The table below shows the section numbers of the manual followed by the types of pages they contain.
1 Executable programs or shell commands
可执行程序或shell命令
2 System calls (functions provided by the kernel)
系统调用(内核提供的函数)
3 Library calls (functions within program libraries)
库调用(程序C语言库中的函数)
4 Special files (usually found in /dev)
特殊文件(通常在/dev目录下的设备文件)
5 File formats and conventions eg /etc/passwd
文件格式和约定,例如 /etc/passwd
6 Games
7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7)
其他(宏和约定),例如man(7), groff(7)
8 System administration commands (usually only for root)
系统管理命令(通常仅适用于 root)
9 Kernel routines [Non standard]
重点关注1、2、3号手册
如果不加数字,man会在手册中按顺序查找,如果找到了,就停止搜索。
退出man手册请按q键
cp file.txt cp_file//将file.txt拷贝至cp_file中
cp text.c ..//复制文件text.c到上级目录(重复拷贝是覆盖式的)
cp -r dir ..//拷贝目录dir到上一级目录,递归式拷贝(强制拷贝加-f)
cp -i text.c ..//复制text.c到上级文件
cp 文件名 文件名+自定义名字(拷贝一份)
mv src dest//可以剪切普通文件和目录,将src剪切到dest
mv ../text.txt hhhhhh.txt
注意这里是将上级目录的text.c移动到当前目录,并重命名为hhhhh.txt
1、在文本文件写入10000行
cnt=0; while [ $cnt -le 10000 ] ; do echo " hello [$cnt] "; let cnt++; done > text.txt
2、安装nano
sudo yum install -y nano
ctrl+x退出
cat -n text.txt
tac tetx.c
more text.txt//使用回车键进行下翻一行或空格向下翻n行
more -5 text.txt//打印5行数据,使用回车键进行下翻一行或空格向下翻n行
less指令相同。
/想要查找的内容
less支持上翻下翻,且在查找时,高亮显示查找结果。
head text.txt//默认是打印10行
tail text.txt//默认是打印10行
head -20 text.txt//打印前20行数据
tail -20 text.txt//顺序打印后20行数据
head -1010 text.txt | tail -10//head,tail默认是从文件中读取数据的
相当于head把1010行数据写进管道里,tail通过管道拿数据
head -1010 text.txt | tail -10 | tac | head -3
date//打印当前时间
date +%Y/%m/%d//打印当前年月日
date +%Y/%m/%d-%H:%M:%S//打印当前年月日,时分秒,分隔符随便用哪个(分隔符不能断)
date +%s//时间戳
date +%Y/%m/%d-%H:%M:%S -d@1664112061//将时间戳转换为年月日,时分秒
cal//跳出当月日历
cal 2022//显示2022年的日历
cal -3//显示上月、本月、下月的日历(只能-3,不能-其他数字)
find /home/jly -name text.c//通过名字查找出/home/jly路径下的text.c文件
注意find有可能访问磁盘,在大文件系统中搜索速度较慢,但是结果很真实。
用于查找文件名对应的指令或文档或压缩包等,是一种近似查找。
which用于查找指令位置及重命名信息
alias jly='ls -l --color=auto'//将ls -l指令重命名为jly,以后想用ls -l敲jly就行
grep是文本内容行过滤根据,默认匹配文本关键字,匹配上了行显示。
grep处理完数据后可以和通过管道,让数据给其他指令继续加工。
grep '666' text.txt//在text.txt中搜索所有666字段
grep -n '666' text.txt//-n选项将查找到的内容在原文本中的行号也带出来
grep -i 'hello' text.txt//-i选项将会无视大小写,将大小写的hello全部查找出来
grep -v 'hello' text.txt//-v选项,忽略文本中所有的hello字段
grep -v 'hello' text.txt | wc -l//输出非hello字段的行数
sort text.txt
注意文本排完序后将被打印至屏幕,但是原文本没有被改变。
uniq text.txt
注意相邻文本行去重后将被打印至屏幕,但是原文本没有被改变。
sort text.txt | uniq
zip -r my.zip text//对当前目录中的text进行.zip格式的打包压缩
unzip my.zip//解包解压
unzip my.zip -d 路径//将zip压缩包解包解压至指定路径
打包压缩的优点是便于传输,将多个文件合为一个文件,不存在丢失,高效传输。
1、打包压缩
tar czvf my.tgz 文件
//c代表创建,z代表压缩,v代表显示压缩过程,f代表创建的压缩包文件名(后面马上得跟上这个名字)
2、解包解压
tar xvzf my.tgz//将my.tgz解压至当前文件夹
//x代表解包,v代表显示压缩过程,z表示解压,f代表创建的压缩包文件名(后面马上得跟上这个名字)
3、不解压看tgz压缩包内容
tar tf my.tgz//不解压看tgz压缩包内容
4、将tgz包解包解压至指定目录
tar xvzf my.tgz -C ~//将my.tgz压缩包解包解压至家目录
节省空间、将多个文件压缩成一个压缩包便于管理、压缩包科可加密、体积小便于传输
例如输入whi,连按两下TAB键,将会显示出所有whi开头的命令
当输入cle时,因为只有clear指令,所以按一下TAB键将会把clear指令自动补齐。
CSDN话题挑战赛第2期
参赛话题:学习笔记