一:目录操作指令
1、Linux起步指令:
我们就以这条来开始解释
st@st-virtual-machine:~$
st:表示当前登录的用户
@:这个没有具体意义,作为分隔符
st-virtual-machine:这是主机名,也就是在安装Ubuntu的时候设置的名字
~:表示当前登录用户的家目录
$:表示普通用户
2、pwd:查看当前目录的路径(绝对路径)
路径分为两种:绝对路径和相对路径。
绝对路径:就是以根目录为参考点描述的路径 (/)
相对路径:就是以当前目录为参考点描述的路径(./)
3、ls:显示指定路径(默认当前路径下的文件或目录)
ls [参数]
-a:显示所有文件或目录(包含隐藏文件)
-l:显示所有文件或目录的详细信息列表
-r:将文件以相反的次序显示(默认依照英文字母次序显示)
-t:将文件以创建时间的先后次序显示
ps:多个参数可以共同使用。也可以直接指定具体的目录进行访问。
ls -tlr
ls /mnt/hgfs/code
4、cd:切换目录
cd 要切换的目录
cd ~:切换到当前家目录下
cd -:返回上一次操作的目录
cd /:返回到根目录
cd ./:切换到当前目录(相对路径)
cd ../:切换到上一级目录
cd ../..:切换到上两级目录
5、mkdir:创建文件或目录
mkdir [参数] 需要创建的文件名或目录
-p:可以同时创建多个文件或目录
mkdir -p demo01.c demo02.c
6、rmdir:删除空文件或目录(仅限于空的)
7、rm:删除文件或目录
rm [参数] 文件或目录
-i:删除时系统给出交互提示 (可输入yes或no)
-f:强制删除不提示
-r:递归删除 (就是从要删除的这个文件夹开始找,找到文件夹的最里边,然后从里边开始一层一层的往外删除 )
ps:文件可以直接删除,文件夹需要递归删除;参数可以一起使用
rm -ri 要删除的文件名或目录
8、cp:复制文件(递归复制的时候可以复制文件夹。可以看作是拷贝+粘贴构成)
cp [参数] 被复制的目录/文件路径 目的路径
-r:递归复制,复制文件夹里的所有内容
-i:如果目的地理解下已经存在同名文件/路径,交互提示
9、mv:移动文件或重命名文件(目录)
移动文件:
mv a.txt ../b //把a.txt文件从当前目录移动到上级目录(b)下
重命名:
mv a.txt ./b.txt
二:文件操作指令
1、cat:查看文件内容
cat -n a.txt //查看a.txt文件并显示行号
2、more:分页查看文件内容
more 文件名(文件路径)
more操作: 空格键: 按空格,向下反动一页
回车: 按回车,向下翻动一行
Q/q: (quit缩写 ) 退出
ps:more操作只能向下不能向上
3、less:分页查看文件内容
less 文件(文件路径)
less操作: 空格键:向下翻页
B/b:向上翻页
方向上下键:向上向下翻
Q/q: 退出(quit)
4、head:查看文件头部内容(默认前十行)
head -6 a.txt //查看a.txt 文件的前六行
5、tail:查看文件的尾部内容(默认十行)
tail -5 a.txt //查看a.txt 文件的末六行
6、grep:搜索文件内容(再文件中查找指定的字符串)
grep [参数] 要查找的字符串 文件(文件路径)
-n:显示行号
-c:统计搜索到的行的数量
-i:忽略大小写搜索
7、find:查找文件或目录(递归查找),从磁盘开始查找,精确性高,性能差
find 检索路径 [选项] 要找的内容
-name:按名字查找
-iname:忽略大小写按名字查找
-size:按照文件大小查找(默认一个单位是512字节,也就是文件只有超过512字节才支持size检索)
-type:按照文件的类型查找
find ./ -iname test.c //再当前目录中查找名字为 test.c 或者TEST.C
find ./ -size +3M //在当前目录中查找超过3M的文件 “+”表示大于
8、locate:快速查找文件或目录,从数据库查找。准确性低,性能高
locate [参数] 文件/目录
-c:统计
-i:忽略大小写
9、which:快速查找指令位置 如:which ls
10、echo:将指定的字符串输出到设备上
>:覆盖文本中本来的内容
>>:在文本原本内容后追加内容
11、管道“ | ”:将前一个指令执行的结果作为下一个指令执行的条件
ls -l | grep "demo01.c"// 以详细列表的形式显示目录然后找到文件demo01.c
ps:类似于cd a | mkdir b
这样的命令组合在管道里是不适用的!管道(|
)是用来将一个命令的输出作为另一个命令的输入的。而 cd
命令是用来改变当前工作目录的,它没有输出任何内容到标准输出,因此没有数据可以被管道传递给 mkdir
命令。