需要云服务器等云产品来学习Linux的同学可以移步/-->腾讯云<--/-->阿里云<--/-->华为云<--/官网,轻量型云服务器低至112元/年,新用户首次下单享超低折扣。
目录
五、cd(改变工作目录(change directory))
3、rm -rf(递归、强制删除目录及其内部文件(force))
十九、find(精确查找)whereis(近似查找)which(查找指令)
1.2sort 文本名(按ASCII码对文本进行排序)uniq(相邻文本去重)
二十一、zip(打包压缩)unzip(解包解压)tar(打压+解tgz压缩包)
可在本页面使用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/test.c
stat命令用于显示文件的状态信息。stat命令的输出信息比ls命令的输出信息要更详细。
- [root@VM-4-11-centos ~]# stat 106/test.c
- File: ‘106/test.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 test.c//系统不询问
- rm -i test.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 test.c ..//复制文件test.c到上级目录(重复拷贝是覆盖式的)
- cp -r dir ..//拷贝目录dir到上一级目录,递归式拷贝(强制拷贝加-f)
- cp -i test.c ..//复制test.c到上级文件
- cp 文件名 文件名+自定义名字(拷贝一份)
mv src dest//可以剪切普通文件和目录,将src剪切到dest
- mv ../test.txt hhhhhh.txt
- 注意这里是将上级目录的test.c移动到当前目录,并重命名为hhhhh.txt
1、在文本文件写入10000行
cnt=0; while [ $cnt -le 10000 ] ; do echo " hello [$cnt] "; let cnt++; done > test.txt
2、安装nano
sudo yum install -y nano
ctrl+x退出
cat -n test.txt
tac tetx.c
- more test.txt//使用回车键进行下翻一行或空格向下翻n行
- more -5 test.txt//打印5行数据,使用回车键进行下翻一行或空格向下翻n行
less指令相同。
/想要查找的内容
less支持上翻下翻,且在查找时,高亮显示查找结果。
- head test.txt//默认是打印10行
- tail test.txt//默认是打印10行
- head -20 test.txt//打印前20行数据
- tail -20 test.txt//顺序打印后20行数据
- head -1010 test.txt | tail -10//head,tail默认是从文件中读取数据的
- 相当于head把1010行数据写进管道里,tail通过管道拿数据
- head -1010 test.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 test.c//通过名字查找出/home/jly路径下的test.c文件
注意find有可能访问磁盘,在大文件系统中搜索速度较慢,但是结果很真实。
用于查找文件名对应的指令或文档或压缩包等,是一种近似查找。
which用于查找指令位置及重命名信息
alias jly='ls -l --color=auto'//将ls -l指令重命名为jly,以后想用ls -l敲jly就行
grep是文本内容行过滤根据,默认匹配文本关键字,匹配上了行显示。
grep处理完数据后可以和通过管道,让数据给其他指令继续加工。
- grep '666' test.txt//在test.txt中搜索所有666字段
- grep -n '666' test.txt//-n选项将查找到的内容在原文本中的行号也带出来
- grep -i 'hello' test.txt//-i选项将会无视大小写,将大小写的hello全部查找出来
- grep -v 'hello' test.txt//-v选项,忽略文本中所有的hello字段
grep -v 'hello' test.txt | wc -l//输出非hello字段的行数
sort test.txt
注意文本排完序后将被打印至屏幕,但是原文本没有被改变。
uniq test.txt
注意相邻文本行去重后将被打印至屏幕,但是原文本没有被改变。
sort test.txt | uniq
zip -r my.zip test//对当前目录中的test进行.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指令自动补齐。
输入cp ../指令后,再按下TAB键,会显示上级目录下的文件。
CSDN话题挑战赛第2期
参赛话题:学习笔记