Linux教程

Linux常用指令

本文主要是介绍Linux常用指令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Linux常用指令

关机&重启命令

shutdown -h now //立即关机
shutdwon -h 1 //1分钟后关机
shutdown -r now //立即重启
halt //关机
reboot //重启计算机
sync //把内存的数据同步到磁盘

注意细节

不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中。

用户管理

//添加用户
useradd 用户名
//指定/修改密码
passwd 用户名
//删除用户
userdel 用户名
//查询用户信息
id 用户名
//切换用户
su - 用户名
//注销用户(图形界面无效)
logout
//返回到原来用户
exit
//查看当前用户/登录用户
whoami

//增加组
groupadd 组名
//删除组
groupdel 组名
//修改用户的组
usermod -g 用户组 用户名

用户和组的相关文件

用户配置文件

/etc/passwd 每行的含义:用户名:口令:用户标识号:组标识号:主目录:登录:Shell

组配置文件

/etc/group 每行含义:组名:口令:组标识号:组内用户列表

口令配置文件

/etc/shadow 登录名:加密口令:最后一次修改时间:最小时间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

应用案例

//创建user用户
useradd user
//创建user用户并指定家目录
useradd -d /home/user user
//指定user用户·密码
passwd user
//删除user用户
userdel user
//删除user用户及家目录
userdel -r user
//查询user用户信息
id user
//切换user用户
su - user

//创建beijing组
groupadd beijing
//创建user用户,并指定beijing组
useradd -g beijing user

//创建shanghai组
//将user用户的用户组修改为shanghai组
usermod -g shanghai user

实用指令

运行级别

帮助指令

man //获取帮助信息
help //指令

文件目录类

//显示当前工作目录的绝对路径
pwd
//列出文件和目录
ls [选项]/[目录或文件]
//切换目录
cd [参数]
//创建目录
mkdir [选项] 要创建的目录
//删除空目录
rmdir [选项] 要删除的空目录
//创建空文件
touch 文件名称
//拷贝
cp [选项] source dest
//移除文件或目录
rm [选项] 要删除的文件或目录
//移动文件与目录或重命名
mv [选项] source dest

//查看文件内容
cat [选项] 要查看的文件
more [选择] 要查看的文件
less [选择] 要查看的文件

//输出重定向指令
>
//追加指令
>>

//输出内容到控制台
echo [选项] [输出内容]
//显示文件的开头部分内容
head [选项] 文件
//显示文件的尾部部分内容
tail [选项] 文件

//软链接
ln -s [原文件或目录][软链接名]

//查看已经执行过历史命令
history

应用案例

//列出文件和目录
ls -al
//切换目录
cd ~
cd ..
cd /
//创建目录
mkdir animal
mkdir -p /root/animal/tiger
//删除目录
rmdir /root/animal/tiger
rm -rf /root/animal
//创建空文件
touch 1.txt 2.txt
//递归复制整个文件夹
cp -r animal new_animal
//移除目录
rm -r new_animal
rm -rf new_animal
//移动多个文件至目录内
mv 1.txt 2.txt dest
//重命名目录
mv dest folder
//查看文件内容
cat -n /etc/profile
cat -n /etc/profile | more
将/home目录下的文件列表写入到/home/info.txt中
ls -l /home > /home/info.txt
echo "hello world!" >> /home/info.txt
cal > mycal

//显示环境变量
echo $PATH
//控制台输出hello world!
echo "hello world!"
//输出前5行
head -n 5 /etc/profile
//输出后5行
tail -n 5 /etc/profile
//实时的监控mydate.text有没有变化
tail -f mydate.txt

//创建软链接
ln -s /root linkToRoot
//删除软链接
rm -rf linkToRoot

//查看10条历史命令
history 10

//执行历史命令为10的命令
!10

时间日期类

//显示当前日期
date [选项]
//查看日历
cal [选项]

实用案例

//显示当前时间
date “+%Y-%M-%d %H:%M:%S”
//设置系统时间
date -s "2021-10-26 16:23:30"
//显示当前日历
cal
//显示器2021日历
cal 2021

搜索查找类

//查找指令
find [搜索范围][选项]
//快速定位文件路径
locate [搜索文件]

//过滤查找
grep [选项] 查找内容 源文件
-n 显示匹配行及行号。
-i 忽略字母大小写。

//管道符(表示将前一个命令的处理结果输出传递给后面的命令处理。)
|

实用案例

//按名字查找
find /home -name hello.txt
//按用户查找
find /opt -user nobody
//按大小查找
find / -size -20M
find / -size 20M
find / -size +20M

//写入2021日历于1.txt
cal 2021 > 1.txt
//查找文件内May所在行
cat 1.txt | grep -ni May

特别说明

由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库。(CentOS8需安装`yum install mlocate`使用。)

压缩和解压类

//压缩文件
gzip
//解压文件
gunzip

//压缩文件
zip
//解压文件
unzip

//打包指令
tar [选项]

实用案例

//压缩文件 1.txt -> 1.txt.gz
gzip 1.txt
//解压文件 1.txt.gz -> 1.txt
gunzip 1.txt.gz

//压缩文件
zip -r mypackage.zip /tmp
//解压文件
unzip -d /root/mypackage mypackage.zip

//将1.txt,2.txt压缩成a.tar.gz
tar -zcvf a.tar.gz 1.txt 2.txt
//将/home的文件夹压缩成myhome.tar.gz
tar -zcvf myhome.tar.gz /home
//将a.tar.gz解压到当前目录
tar -zxvf a.tar.gz
//将myhome.tar.gz解压到/opt
tar -zxvf myhome.tar.gz -C /opt

组管理

//查看文件的所有者
ls -ahl

//修改文件所有者
chown 用户名 文件名

//修改文件所在组
chgrp 组名 文件名

实用案例

//改变文件所有者
chown newowner file
//改变用户所有者和所有组
chown newowner:newgroup file

//将abc.txt文件的所有组修改成newgroup
chgrp newgroup abc.txt
//将/home/user目录下所有文件和目录的所有组修改成newgroup
chgrp -R newgroup /home/user

备注

-R 如果是目录 则使其下所有子文件或目录递归生效。

权限管理

文件类型:

- 普通文件
d 目录
l 软链接
c 字符设备(键盘,鼠标。)
b 块文件(硬盘。)

文件所有者权限:
r 可读 w 可写 x 执行

文件所有组权限:
r 可读 w 可写 x 执行

文件其它组权限:
r 可读 w 可写 x 执行

如果是文件,表示硬链接数目,
如果是目录,表示子目录数目。

所有者

所有组

文件大小(字节)

最后修改时间

文件名称

//修改文件或目录权限
chmod [选项] 文件名

实用案例

第一种方式:+、-、=变更权限
u 所有者 g 所有组 o 其它组 a 所有人
chmod u=rwx,g=rx,o=x 文件目录名
chmod o+w 文件目录名
chmod a-x 文件目录名

第二种方式
r=4 w=2 x=1 rwx=4+2+1=7
chmod u=rwx,g=rx,o=x 文件目录名,相当于chmod 751 文件目录名。

其它

//检查是否开启sshd
service sshd status
//查询IP
ip addr
这篇关于Linux常用指令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!