Linux学习:Linux常用指令

247 阅读6分钟

Linux学习:Linux常用指令

Linux指令查询

[菜鸟教程](Linux 命令大全 | 菜鸟教程 (runoob.com))

Linux常用指令

关机&&重启

`shutdown`

`shutdown -h now`   //表示立即关机

`shutdown -h 1 `  //表示一分钟后关机

`shutdown -r now`  //立即重启

`halt`  //直接使用,效果等价于关机
`reboot` //重启
`sync` //将内存数据写入/同步磁盘,这里进行细节补充,
//当我们关机或重启时,都应该先执行一下sync指令,把内存数据写入磁盘,防止数据丢失

获得帮助信息

`man`
`man ln` //例如获取ln指令的帮助信息

获得shell内置命令的帮助信息

`help`
`help ln` //例如获取ln指令的帮助信息

显示当前工作目录的绝对路径

`pwd`

显示目录/文件信息

`ls`
`ls -a /home` //显示home目录所有的文件和目录,包括隐藏的
`ls -l /home` //以列表的方式显示home目录所有的文件和和目录
`ls -ahl` //查看文件/目录所在组
`ll`

新增目录和删除目录

`mkdir` //创建目录
`mkdir home` //创建home目录
`mkdir -p /home/test01` //在home目录下创建test01目录
`rmdir` //删除空目录
`rmdir home` //删除home目录
//注意rmdir指令只能删除空目录

创建一个空文件

`touch` //创建空文件
`touch abc.txt` //创建 abc.txt文件,文件内为空

拷贝文件

`cp` //拷贝文件
`cp -r aaa bbb` //递归拷贝aaa文件夹中所有文件到bbb目录下

删除文件

`rm` //删除文件
`rm -r aaa` //递归删除aaa文件夹下所有文件
`rm -f abc.txt` //强制删除abc.txt文件

移动文件与目录或重命名

`mv` //移动文件
`mv oldNameFile newNameFile` //将oldNameFile文件重命名为newNameFile
`mv /temp/movefile/ targetFolder` //将/temp/movefile移动到 targetFolder

文件查看指令

`cat` //查看文件内容,以只读模式查看,不可修改,为了浏览方便可以使用管道符`|`和`more`
`cat abc txt | more` 
`cat abc.txt` //查看abc.txt文件内容
`cat -n abc.txt` //带行号查看查看abc.txt文件内容
`more` //基于vi编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容,内置快捷键
`more abc.txt` //查看abc.txt文件

image.png

`less` //用于分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,
//支持各种显示终端,less指令在显示文件内容时,并不是一次将整个文件加载后才显示,
//而是根据显示需要加载内容,对于显示大型文件有较高的效率
`less abc.txt` //查看abc.txt文件

image.png

输出重定向与追加

`>`  //输出重定向
`>>` //追加
`ls-l> abc.txt` //列表的内容写入文件abc.txt中,覆盖写)

`ls -al>> abc.txt`//列表的内容追加到文件abc.txt的末尾

`cat 文件1>文件2` //将文件1的内容覆盖到文件2)

`echo “内容”>>文件`//将`内容`写入到文件中

输出指令到控制台

`echo` //输出指令到控制台
`echo hello ` //在控制台中输入hello

显示文件内容

`head` //显示文件头部内容,默认文件首行至10行
`head abc.txt ` //显示文件头部内容
`head -n 5 abc.txt`//显示文件头部前5行内容
`tail`//输出文件尾部的内容,默认情况下tail指令显示文件的后10行内容
`tail abc.txt`
`tail -n 5 abc.txt` //查看abc.txt文件后5行内容
`tail -f abc.txt` //监控追踪abc.txt文件实时更新,常用指令必须要记住,用于实时监控

生成符号连接

`ln` //软连接又叫符号连接,类似于windows里的快捷键方式,存放连接其他文件的路径
//当我们使用pwd查看目录时,仍然看到的是软连接所在目录
`ln -s /home/test01 test01.exe ` //给home目录下test01目录创建一个软连接,命名为test01.exe

查看已经执行过历史命令,也可以执行历史命令

`history` //查看已经执行过历史命令
//执行历史编号为n的指令输入!n即可
`history 10` //查看最近10次执行的命令

显示设置当前日期

`data` //显示当前时间
`data +%Y`//显示当前年份
`data +%m`//显示当前月份
`data +%d`//显示当前是哪天
`data +%Y-%m-%d`//显示年月日
`data -s 字符串时间`//设置系统当前时间

查看日历

`cal` //不加选项,显示本月日历
`cal 2022` //显示2022年全年日历

文件查找指令

`find` //将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端
`find /home/test01 -name` //在/home/test01 目录下查找名为name的文件
`find /home/test01 -user` //在/home/test01 目录下查找user用户的文件
`find /home/test01 +n/-n/n` //在/home/test01 目录下查找大小范围的文件,+n/-n/n为大于n/小于n/等于n
`locate` //可以快速定位文件路径
//locate指令利用实现建立的系统中所有文件名及路径的locate数据库实现快速定位给定的文件 
//Locate指令无需遍历整个文件系统,查询速度极快,为了保证查询结果的精准度,管理员必须定期更新
//由于locate指令基于数据库进行查询,所有第一次运行前,必须使用updatedb指令创建locate数据库
`locate abc.txt` //定位abc.txt路径
`grea` //过滤查找
`|` //表示将前一个命令的处理结果输出传递给后面的命令处理
`cat abc.txt | grep -n 2022` //查找abc.txt中的2022内容,显示匹配行及行号
`cat abc.txt | grep -i 2022` //查找abc.txt中的2022内容,忽略首字母查找

打包及解压缩指令

`gzip` //用于压缩文件
//当我们使用gzip对文件进行压缩后,不会保留源文件
`gzip abc.txt` //压缩abc.txt文件
`gunzip` //用于解压文件
`gunzipl abc.gz` //解压abc.gz文件
`zip` //压缩文件
`zip -r XXX.zip /home` //递归压缩home目录中所有文件为XXX.zip
`unzip` //解压缩文件
`unzip -d /home XXX.zip` //将XXX.zip文件解压缩并放到home目录下
`tar` //打包指令,最后打包的文件是.tar.gz的文件
`tar -zcfv XXX.tar.gz /home` //将/home目录下文件压缩并打包成XXX.tar.gz
`tar -zxfv XXX.tar.gz /home` //将XXX.tar.gz文件解压缩至/home文件下

改变文件所有者/所有组

`chown`//改变文件所有者
`chown user abc.txt`//将abc.txt所有者改为user
`chgrp`//改变文件所有组
`chgrp users abc.txt`//将abc.txt所有组改为users

用户组的操作

`groupadd`//添加一个用户组
`groupadd users`//添加一个users用户组

用户的管理

`useradd`//添加一个用户
`useradd -g users user`//添加一个user用户到users组
`usermod`//改变用户所在组
`usermod -g users01 user`//改变user用户到users01组
`usermod -d /home user`//改变user用登录的初始化目录为/home
`id`//查看用户信息
`id user`//查看user用户的信息

文档更新时间

2022/07/20