根目录: /
当创建linux用户的时候,系统会自动以
用户名在/home/创建一个文件夹
进入真正的自己的家里面
cd ~ 可以直接进入自己家里面
linux命令概述
命令 选项 参数
//选项和参数可以没有但是命令一定要有
命令:具体的linux命令
选项:扩展命令的功能
参数:命令作用的对象
ls
ls -a
ls默认查看当前目录下 没有隐藏的文件
ls -a显示所有文件(包含隐藏文件)
比如这里
. 表示的是当前目录也就是day01目录
..表示上一级目录 也就是c目录
ls -l
以列表的方式显示
最开始的 - 表示的是普通文件如果是文件夹就是d
rw-rw-r-- 表示的是权限
ls -a -l 结合使用
显示所有文件夹,并以列表方式进行显示
ls -a -l -h
以更人性化的方式显示文件大小
这里的4k上面是4096所以更加人性化的显示出来
而且
ls -a -h -l
ls -h -a -l
ls -ahl
这些都是可以的可以互换位置
--help 查看命令的帮助信息
(只能查看命令)
什么命令不知道就
命令 --help
比如touch不知道什么作用
touch --help就可以知道touch用法了
man命令
man帮助信息 (查看命令,库函数,系统调用等)
man是linux提供的一个手册,这个手册有很多个章节
第一章中放的是 命令 的帮助信息
第二章中放的是系统调用(操作系统提供的函数open)
第三章中放的是库函数(c库提供的函数printf)的帮助信息
咋样使用man就直接比如说printf
man 1 printf 没找到就 man 2 printf man 3 printf一共就三章,
man 1 hehe
man 2 hehe
man 3 hehe
tab自动补全
比如要打ifconfiger
你只要输入ifc + tab
那么就会自动补全
history
历史命令 查找你所敲得所有命令
但是重启之后可能会没有了
> 重定向
echo “hello world”> a.txt
将"hello world"字符串输出到文件中(覆盖)
在不打开文件的情况下往里面放东西
这上面可以看到将hello再传进a.txt文件中时,
hello world不见了被覆盖了,结果变成了hello
>> 就是追加的意思
echo “world” >>a.txt 将world 输出到.txt文件中,
对源文件进行追加 结果是hello world
将word追加到末尾
cat查看文件的内容
cat a.txt 查找a.txt文件中的内容
echo 输出
echo “abcdf” 输出字符串
ps -A
将系统所有进程显示到终端上
grep xxx查找字符串
在终端上查找字符串xxx
管道 |
写端 | 读端
管道的左边写入数据管道右边读数据
先写进什么数据,就先读什么数据
树状显示 树状显示下载命令
sudo apt-get install tree
tree -L 层数
用法 tree -L 1只显示一层
clear清屏
cd 切换目录
1.cd 目录 进入到目录里
2.cd .. 返回上一级目录
3 cd ~ 回到家目录
4 cd -返回上一次目录 上一次目录是两个目录之间切换
pwd
显示当前工作目录的绝对路径
不知道自己在哪里的时候就用pwd显示出来
cat 查看文本内容
将文件的内容显示到终端上
cat只能查看,不能修改,只能查看文件不能查看文件夹也就是目录
rm
rm是remove的意思,移除 即删除的意思
删除文件或目录
rm a.txt
删除文件名为a.txt的文件
rm *.txt
删除所有.txt文件
删除文件夹也就是目录 一定要加上-r
rm 目录 -r
-r是递归删除 先把文件夹里面文件删除,在删除文件夹
删除跑路命令 “千万别干”
-f强制删除
chmod 改变权限
4 读
2 写
1 执行
chmod 444 a.txt
将a.txt权限改成只读只读只读
这样它就只能读了
cp 是copy复制的意思
cp a.txt test
将文件a.txt拷贝到test目录里面去**
拷贝文件夹
**如果copy拷贝的是一个文件夹必须加-r递归拷
cp test b -r
将文件夹test拷贝到文件夹b里面去**
copy a.txt b.txt 备份
cp 文件1 文件2 将文件1备份成文件2
总结:
cp a.txt test 将文件拷贝到文件夹test里面去 test是文件夹a.txt是文件
cp 文件 文件夹
cp test b -r 将文件文件夹test拷贝到文件夹b中去
cp 文件1 文件2 将文件1备份成文件2
mv 是move 是移动的意思,即剪切的意思
mv移动文件或目录也是剪切文件或目录
mv 源文件 目的目录 将源文件移动到目的目录中
mv a.txt test文件夹
mv test b
将test目录移动到b目录 移动是不需要加-r的
mv 源目录 目的目录
mv 源目录 目的目录 如果没有目的目录名那就是将源目录重命名为目的目录
有就移动了,没有就重命名
mv b.txt c.txt
将b.txt重命名为c.txt
mv 源文件 目的文件 将源文件名重命名
mkdir创建文件夹
mkdir 目录 创建目录
mkdir 创建多级目录 如果某级目录不存在需要加 -p
mkdir f/d -p 表示在f文件夹下创建p文件夹但是f/d都不存在所以加-p
touch
grep: 在指定文件中查找指定内容
首先在c.txt文件中写入内容
接下来用grep查找world
grep world c.txt -n //-n把行号显示出来
如果在某个路径及其子目录下的所有文件中查找字符串
grep hello /home/teacher/* -R -n
在/home/teacher/ 下的文件及其子目录下文件中查找hello字符串
注意:必须加-R递归查找子目录, -n是用来控制显示行号的
比如grep world ./* -R -n 在当前路径所有找world
ln链接文件
ln 源文件名字 链接文件名字 -s
源文件和链接文件内容实时同步 链接文件等价于源文件的快捷方式
如果源文件删除了 ,那么链接文件将无效
ln 源文件名字 链接文件名字
源文件和链接文件 内容实时同步, 链接文件是一个独立的普通文件
如果删除 源文件链接文件不受影响
tar压缩和解压
打包和压缩的区别:
打包:将多文件封装在一起
压缩:将多文件封装在一起通过特定的算法,将冗余的数据进行删除
tar 默认是打包命令,如果想用tar进行压缩 必须加选项
压缩:
tar zcvf 压缩包包名 文件1 文件2 文件3**
// tar 打包命令 z是gzip格式 c是压缩 v是显示压缩进度 f是文件名
//zcvf 除了f必须在最后一个,其余几个字母随意交换顺序
解压:
tar zxvf 压缩包的名称
//x就是解压的意思
tar zxvf test.tar.gz 之后就解压了
tar zxvf 压缩包的名称 -C 目的目录
将压缩包 解压到 目的目录中
tar zxvf test.tar.gz -C ./a 将压缩包解压到 当前路径下的a文件夹里面去
压缩
tar jcvf压缩包包名 文件1 文件2…
解压
tar jxvf 压缩包的名称
解压到路径去
tar jxvf 压缩包的名称 -C 目的目录