pwd
显示当前目录
./表示当前目录
pwd[选项][文件或者目录]
ls
可列出要查看目录的内容
ls -l
每列仅显示一个文件或者目录名称
ls -a
显示当前目录下的所有文件(包含所有隐藏的目录)
ls -i
显示文件和目录的inode编号
要是两个文件的编号相同,说明这两个文件本质上是同一个文件只是文件名不同
cd
切换目录
cd [文件或目录]
绝对路径
一定要从根目录/开始写
相对路径
相对某一路径,.表示当前目录,..表示上一级目录,~表示家目录(root目录)
cd ~
回到root目录下
cd /home
切换至home目录下
uname
显示系统的重要信息
uname [选项]
uname -r
查看该操作系统的内核版本
uname -n
显示该系统的主机名称
uname -a
显示该系统的所有信息
touch
可以更改文件或者目录的时间(存取时间和更改时间),如果没有该文件可以创建文件
touch [选项][文件或目录]
touch -t
使用指定时间(touch -t1801211830 file)
touch file
改变file文件的时间,时间为当前系统时间
touch a.txt
在当前目录下创建a.txt文件
touch a.txt b.txt c.txt
在当前目录下连续创建多个文件
mkdir
创建目录
mkdir [选项][文件或目录]
注意:文件名大小写敏感,不可超过25个字符,不可以使用/,建议不使用~、\、<、>、()、$、*、?、“
选项:-p递归创建目录,嵌套目录
文件或者目录:根目录的路径
mkdir aa
在当前目录下创建一个aa目录
mkdir -p aa/bb/cc/dd
创建一个嵌套的目录
cp
将文件或者目录从一个目录拷贝到另一个目录
cp [选项][源文件或者源目录][目的文件或者目录]
选项
-i在拷贝过程汇总询问是否要拷贝
-f在拷贝过程中不询问直接拷贝
-r拷贝目录中的所有文件和目录
文件或目录
源文件或目录:值得是需要拷贝哪个文件的路径
目的文件或目录:指把源文件或目录拷贝到哪里的路径
cp ~/c1 ~/c2 ~/c3 /home
将root目录下的c1,c2,c3拷贝到home目录下
rmdir
不能轻易使用删除命令
删除空的文件目录
rmdir /aa
删除根目录下的aa空目录
rm
删除文件或目录
rm -r /aa
删除aa目录下的所有文件或目录
递归删除目录下的所有文件或目录
-i
删除是询问是否要删除
-f
删除收不用询问是否要删除
mv
可移动文件或者目录,或是更改文件或目录的名称
mv aa bb
将aa文件更名为bb
mv /aa ~/
将aa移动到家目录下(root目录下)
tar
常用来进行文件的打包和解压缩包
打包
tar[选项][目标包名][源文件目录]
选项
-c:创建一个包
-f:定义目标包
tar -cf demol.tar ./*:创建demol.tar包,并将当前目录下的所有文件打包到demol.tar下
目标包:要打包的包名
源文件或者目录名:哪些文件需要打包
查看包的内容
tar[选项][包名]
选项
-t:查看包中的文件
-f:定义目标包
tar -tf demol.tar:在不解包的情况下查看demol.tar包的内容
包名:要查看的包的路径
添加
tar[选项][目标包名][源文件目录]
选项
-r:将文件追加到包中
-f:定义目标包
包名:查看目标包的路径
源文件或目录:要追加的文件或者目录
tar -rf demol.tar 大灰狼.txt:将大灰狼文件追加到demol.tar包中
解包
tar[选项][包名]
选项
-x:将包解包
-f:定义目标包
包名:查看目标包的路径
tar -xf demol.tar:将demol.tar包解包
压缩包
tar[选项][压缩包名][源文件]
选项
-c:打包
-z:将打包的文件用gzip格式压缩
-v:显示过程
-f:定义目标包
压缩名:指定压缩的名字
源文件:要打包压缩的文件
tar -czf yasuodemol.tar.gz ./*:将当前目录下的所有文件打包成yasuodemol.tar.gz 并压缩
解压缩
tar[选项][包名]
选项
-x:解包解压
-z:以gzip的格式进行解压
-v:显示过程
-f:定义目标包
查看目标包的路径
tar -xzf yasuodemol.tar.gz:将yasuodemol.tar.gz包解压缩
man
通过man命令可以查看Linux中的指令帮助手册
man [选项]命令名
-a:在所有的man 手册中搜索
-f:显示给定关键字的简短描述信息
man -f ls:简要查看ls命令的使用手册
find
在指定目录下查找文件
按文件名称查找
find [查找的路径] [选项] [参数]
选项
-name:按名称查找
-iname:忽略大小写按照名称查找
参数
需要用""
find ./ -name "a*":在当前目录下查找所有以a开头的文件
按文件类型查找
find [查找的路径] [选项] [参数]
选项
-type:文件分类查找
-maxdepth:从当前目录开始按照按照给定深度查找
参数
d:表示目录
f:表示普通文件
find ./ -type f:在当前文件夹下查找所有普通文件
find ./ -maxdepth 3 -type d:在当前目录开始深度为3的目录下查找所有目录
date
显示时间
date[选项][参数]
-d“字符串”:显示字符串所指的日期和时间
-u:显示GMT(世界时间)
-s"字符串”:根据字符串来设置时间和日期
date +"%Y-%m-%d %H:%M:%S":按照给定格式输出时间
cal
显示日历
cal [选项] [月份] [年份]
选项
-s:显示星期天为一个星期的第一天
-j :显示在当年中的第几天
-m:显示星期一为一个星期的第一天
cal:显示当年当月的日历
cal 8 2023:显示2023 年8月的日历
cal -j 8 2023 :显示2023年8月时2023年的第几天
du
查看文件和目录磁盘的使用情况
du [选项] [参数]
选项
-s:仅显示总计
-h:加上单位
参数:目录或者文件
du -sh aa.txt:查看zz.txt文件所占磁盘的大小
ln
对连接的文件或目录进行操作也可以改变源文件(被连接的文件或目录)
连接(默认是硬连接)
软连接 (需要加-s)
在源文件被删除时,创建的连接不可在使用
硬连接
在源文件被删除时,被连接的文件可以继续使用
ln [选项][参数]
选项:软连接加-s
参数:指定要连接的对象,指定要连接的对象
ln -s 小白兔 xiaobaidudu:将源文件小白兔和xiaobaidudu连接
grep
文本查找
grep [选项] [参数]
选项
-i :忽略大小写的区别
-n:在显示符合查找样式的那一列前标出那一列的编号
-v:翻转查找
参数:要查找的字符串
文件路径:要去那个路径查找符合条件的文本
grep "a" /etc/passwd:在给定路径下查找所有含a的文件或目录
grep -v "a" /etc/passwd:在给定路径下查找所有不含a的文件或目录
wc
统计文本
wc [选项] [文件]
选项
-c:只显示Byte数
-l:只显示行数
-w:只显示字数
wc /etc/passwd:第一个参数是行号,第二个参数是字符数,第三个参数是词数
vim
vim 文件名
编辑器(编辑好后先按ESC)
:w是保存一些文本
:q退出当前的文本编辑器
:wq保存并退出当前文本编辑器
:w!强制写入该文件
:q!不想保存当前修改强制退出
:x保存后离开
在不是写入模式下的快捷操作(一般模式下的操作)
x:向后删除一个字符
ndd:删除光标所在的向下n行
p:将已复制的数据粘贴在光标的下一行上
nx:连续向后删除n个字符
yy:复制光标所在的那一行
P(大写):将已复制的内容粘贴在光标显示的上一行
dd:删除光标所在的那一行
nyy:复制光标所在的向下n列
u:恢复上一个操作
编辑模式下的操作
i:从光标所在处插入
a:从当前光标所在的下一个字符开始插入
o:从目前光标所在的下一行处插入新的一行
r:会取代当前光标所在的那一个字符一次
l:从当前光标所在位置的第一个非空格处开始插入
A:从当前光标所在行的在后一个字符处开始插入
O:从当前光标所在的上一行插入新的一行
R:会一直取代当前光标所在文字的文字,直到按esc结束
多窗口操作
横向切割打开
:new+窗口名(文件名)
:split+窗口名
纵向切割打开
:vsplit+窗口名(文件名)
关闭多窗口
:quall关闭当前窗口
窗口的切换
:Ctrl+w+j/k通过j/k可以上下切换或者通过Ctrl+w+左右键,还可以通过快速双击Ctrl+w键依次切换窗口
vim和shell命令直接的切换
:shell通过在不关闭vim的情况下切换到shell命令行
:exit从shell回到vim
echo
控制台输出,在shell中打印变量的值或者直接输出指定的字符串
echo [参数]
要输出的值或者字符串
echo "hello":在终端输出hello
alias
给文件或目录命名别名
alias [选项][参数]
-p:打印已经设置好的别名
alias 新的命令=‘原命令 -选项/参数’
alias -p:显示已经设置的所有的别名
alias kk='ls -al'
unalias
命名别名
unalias [选项][参数]
-a :取消所有的命名别名
命名别名:指定要取消的命名别名
查看文本内容
cat
cat [选项] [参数]
选项
-b:从1开始对所有(不对空行进行编号)输出进行编号
-n:从1开始对所有输出进行编号
cat aa.txt:显示aa.txt文件的所有内容
less
查看文本内容
less [参数][文件]
-e :文件内容显示完毕后,自动退出
-N:每一行显示行号
tail
查看文本内容
tail [参数][文件]
-n:指定从尾行显示多少行
-f:监控文件尾部插入的行
在不指定显示多少行时,默认显示10行
head
查看文本内容
head [参数][文件]
-n:指定显示从头开始的多少行
不指定显示行数时,默认显示10行
more
查看文本内容(分进度显示,显示百分比的内容)
more [文件]
按space键:显示文本的下一屏内容
按enier键:只显示文本的下一行内容
按H键:显示帮助屏,该屏上有相关的帮助信息
按B键:显示上一屏内容
按Q键:退出more命令
重定向
>:输出覆盖重定向
>>:输出追加重定向
2>:错误输出重定向
2>>:错误追加重定向
进程管理命令
ps
用于报告当前系统的进程状态
ps [选项] [参数]
-a:显示所有用户的进程
-u:显示用户和启动时间
-x:显示没有控制终端的进程
-e:显示所有进程,包括没有终端控制的进程
-l:长格式显示
ps -aux:显示隶属于自己的进程状态
ps -aux | grep xxx:过滤出要查看的进程
kill
终止一个进程
kill [选项][参数]
-1:重启进程
-9:强制杀死进程
参数:pid进程编号
kill pid:杀死进程编号为pid的进程
top
查看进程信息
top [选项] [参数]
退出top按q键
adduser
添加 用户
adduser 用户名
id
查看用户id
id [选项] [参数]
-g:显示用户所属群组的id
-u:显示用户id
参数:用户名,要查看的用户名
chown
改变文件所属
chown [选项] [参数]
-R:递归处理,将指定目录下所有的文件及目录的所属一并改变
参数:所属用户:要改变的所属用户名
所属组:要改变的所属组
chown -R test /kk:将/kk目录下的所有文件或目录改为test所有
chmod
改变用户的权限
用户的权限
r=4
r权限:表示可读权限
w=2
w权限:表示有可写权限
x=1
x权限:表示可执行权限
-=0
-占位:表示该位置没有具备的权限
u : rwx
所属用户:所属用户拥有的权限
g : rwx
所属组:所属组拥有的权限
o : rwx
其他:既不属于用户又不是其他组的其他用户的其他用户所拥有的权限
chmod u+x,g+w kk:文件kk设置权限
chmod [选项] [参数]
权限值
参数:设置权限的文件名