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