命令行参数:命令行参数本质是递交给ls程序的一个参数,该参数传递给main函数。
linux下的每个命令都是一个可执行程序,所以每个命令就有一个main函数。
ls:展示目录下的文件或者文件夹;展示文件的信息(list)
ls+命令行参数+目录或者文件
ls 目录 | 展示目录下的文件或文件夹。 |
---|---|
ls 文件 | 展现当前文件具体信息 |
ls + 空 | 输出当前目录下的内容 |
-l:罗列当前文件或者文件夹的具体信息:
ls -l+目录或文件夹(等价于ll)
ls -a | 罗列linux操作系统下的隐藏文件 |
---|---|
ls –l +空 | 罗列当前文件或者文件夹的具体信息 |
ls –al | 等价于ll –a,既罗列隐藏文件,还要罗列具体信息 |
ls -hl | 等价于ll –h 计算文件大小,将字节转化为k,m,g |
ls –lrt | 按最近修改时间罗列 |
隐藏文件:linux下的隐藏文件以(.)开头;.代表当前目录(路径),…代表上一级目录
显示文件的更多属性
-
后面是命令的选项
pwd命令:显示用户当前所在的目录
/
表示根目录(等价于windows下的我的电脑)
所有磁盘文件都从根目录开始
第一个/
是根目录,以后的/是路径分隔符- ls /:罗列根目录下的文件或文件夹
- /root:是root用户的家目录,root用户每次登陆上来都在该目录下;
- 根目录:就是一个绝对路径的第一个“/”
家目录:不同用户的家目录是不同的;
root用户的家目录是/root;
普通用户:一般情况下,普通用户的家目录都是 /home/用户名命名的文件夹
root和home都是/的子目录
家目录就是该用户可以在哪个目录下操作命令
绝对路径:从根目录开始
相对路径:相对于当前路径
从一个子节点查找父节点,路径具有唯一性
cd:切换目录(change dictory)
cd+路径 | cd的路径从根目录开始,该路径称为绝对路径 |
---|---|
cd | 回到执行用户的家目录 |
cd ~ | 回到执行用户的家目录 (~:家目录) |
cd - | 切换到之前所在目录(相当于电视遥控器的返回键) |
touch创建文件
touch +文件名 | 创建该文件 |
---|
还可以修改文件时间
mkdir创建文件夹
mkdir+文件夹名 | 创建该文件夹 |
---|---|
mkdir –p | (嵌套创建加-p)文件夹名1/名2/名3 |
rm删除文件或者文件夹(remove)
rm+文件名 | 删除该文件 |
---|---|
rm -r | (删除文件夹要加-r参数,递归删除)不能直接用rm删除文件夹 |
rm -ri | 每进行一步进行询问是否操作 |
rm -rf | (f:force强制)直接操作,不询问 |
rm -rf/* | 从根目录下开始删除所有文件 |
rm -rf* | rm –r./*的缩写 |
man
man +命令 | 得到该命令的详细信息 |
---|
man后面默认是命令
man printf就是查printf命令(去1号手册)
man命令是去查询手册,总共八个手册,用man查询后会显示是第几手册
- 手册2:查询出的函数都是操作系统提供的函数,统称为系统调用函数
- 手册3:查询出的函数都是C库函数
库函数:系统调用函数重新进行封装
echo 重定向
echo+内容 | 屏幕上输出所写的内容 |
---|---|
echo+内容>文件名 | 将内容放入该文件中(文件不存在就生成) |
echo+$PATH | 输出环境变量 ($等于C语言中的解引用) |
- > 重定向符
将要显示在屏幕的内容写到文件中
会将原文件的内容清空- >>追加重定向
不会清空原内容,会在原内容后继续写入
- cat后不加文件名
默认从标准输入(键盘,也当作文件,Linux中一切皆文件)获取数据- < 输入重定向
cat < 1.txt
把本来应该从键盘文件中读取数据的方式,改成从指定文件中读取
CPU和内存是完成Linux中一切皆文件的设计
cp 复制文件或者文件夹
cp+文件名+路径(文件):将文件内容拷贝至该路径(文件)下
cp+文件名+路径(文件)/新命名文件
cp –r+文件夹名(重命名同上)
mv:1.移动2.重命名
mv+文件或文件夹+路径:将该文件或文件夹移动到该路径下
mv +文件或文件夹+新名称
cat 查看文件信息
显示文件全部内容,适用于查看短文本
cat+文件名 | 输出文件中所有内容 |
---|---|
cat –n+文件名 | 输出带行号 |
tac从最后一行开始打印
more类似于cat
显示一个屏幕的内容适用于长文本
more+文件名 | 查看文件内容,按回车开始输出 |
---|---|
more –n+文件名 | 查看行号 |
按f:向后查看新内容
b:向前查看老内容
q:退出
less+文件名:
没有进度百分比,按f,b是以每页方式查看
/+字符串 | 向后搜索符合的内容 |
---|---|
?+字符串 | 向前搜索 |
less有预加载功能,系统自动加载
cat,more,less区别
cat | 打印文件内容到中断限时 |
---|---|
more | 分页显示文件内容,但是通常向上翻页不好使 |
less | 分页显示文件内容,可以灵活上下移动光标和翻页 |
less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件
head:查看文档首部内容
head +文件名 | 默认查看10行 |
---|---|
head -num | 想查多少就填多少的数 |
tail: 查看文档尾部内容
tail+文件名 | 默认查后十行 |
---|---|
tail –num | 想查多少就填多少的数,head同理 |
tail –f+文件名 | 实时查看更新内容 |
head -30020 1.txt | tail -20
查看[30000-30020]行中间的内容
|
管道:用于传输数据,- head把数据放入,head执行的结果放入管道
- tail操作里面的数据
后期会研究管道的原理
find:在linux操作系统中查找文件
find+在哪查找的路径 –name+要查找的文件名
grep:在文件中查找字符串(查找的东西更小)
行过滤工具,只要一行存在关键字,就会被匹配
grep+查找的字符串+路径-R(-R递归查找) | 默认查找该路径下的所有文件 |
---|---|
通常与ps aux命令搭配 | |
-i | 忽略大小写进行匹配 |
-v | 反向匹配 |
-n | 输出带行号 |
date 日期命令
data –s”……(时间)” | 更改当前系统时间 |
---|---|
date +%Y-%m-%d__%H:%M:%S |
打印日期和时间
时间戳:作为日志的一部分
cal
cal | 直接展示日历 |
---|---|
cal –y+年份 | 展示该年日历,不加年份默认今年 |
打包指令
压缩zip :
zip+压缩文件名(随便起).zip +待压缩文件 |
---|
zip-r+压缩文件夹名.zip +待压缩文件夹名 |
-r会递归压缩
解压缩unzip:
unzip+压缩文件名.zip | 默认解压缩到当前路径 |
---|---|
unzip+压缩文件名.zip –d +路径 | 解压缩到该路径下 |
tar
gz方式:
压缩 | tar-zcvf+压缩后文件名.tar.gz+待压缩文件或文件夹 |
---|---|
解压缩 | tar-zxvf+待解压缩文件.tar.gz |
zcvf的含义:
z:gz压缩方式
c:创造压缩文件
v:展示压缩或解压缩过程
f:后直接指定压缩文件名称
x:解压缩
bz2方式:
压缩 | tar-jcvf+压缩后文件名.tar.bz2 +待压缩文件或文件夹 |
---|---|
解压缩 | tar-jxvf+待解压缩文件.tar.bz2 |
z:gz压缩方式
c:创造压缩文件
v:展示压缩或解压缩过程
f:后直接指定压缩文件名称
x:解压缩
bc
Linux下的计算器
uname
获取电脑和操作系统的信息
x86_64=x64