Linux常用命令
Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们。
一、基本命令
1、查看系统信息:
- lshw 查看硬件信息
- lscpu 查看cpu信息
- lsusb 查看usb信息
- uname 查看当前系统名
- uname -a 查看当前系统的所有信息
- arch 查看系统的架构 x86 表示32位 x86_64表示64位
- df 查看磁盘空间
- df -h 可以直观的查看磁盘的空间..
- date 查看当前的时间
- cal 查看当月日历
- hostname 查看主机名
- who 查看当前用户信息
- free 查看当前内存的使用情况
- free -h 直观的查看当前的内存使用情况
- ifconfig 查看ip地址
2、开关机及重启命令:
- poweroff 立即关机,类似于切断系统电源
- shutdown -h now 关闭系统,安全的关机
- shutdown -h +5& 5分钟之后自动关机
- shutdown -h 20:13 20:13自动关机
- shutdown -c 取消自动关机
- reboot 重启
- shutdown -r now 重启
- systemctl reboot 重启
3、文件和目录:
- cd 目录 进入指定目录
- cd / 进入根目录
- cd ~ 进入/home/当前用户
- cd .. 返回上一级目录
- ls 查看当前目录下的目录与文件名
- la 查看当前目录下的所有的目录及文件,包含隐藏文件
- tree 以树状结构查看目录中的文件及目录
- find -name 文件名 表示在当前目录下查找指定文件位置
- find 路径 -name 文件名 表示在指定目录下查找指定文件位置
- file 文件名/目录名 查看文件的类型
- touch 文件名 表示创建一个文件
- mkdir 目录名 表示创建一个目录
- mkdir -m 700 目录名 创建一个目录,并设置权限为700
- mkdir -p 目录名 如果创建的目录对应的父级目录不存在,连同父级目录一同创建
- rm 文件名 表示删除一个文件
- rm -rf 目录名 表示强制递归删除该目录及其所有的子级目录文件
- rmdir 目录名 表示删除一个空的目录
- mv 文件1 文件2 将文件1改名为文件2
- mv 目录1/文件1 目录2 将目录1或者文件1移动到目录2下
- cp 文件 目录 表示将一个文件复制到目标目录下
- cp 文件 目录/新文件名 表示将一个文件复制到目标目录下并更名为新文件名
- cp -r 原目录 新目录 表示将一个目录复制到某个目录下
- cat 文件 查看文件内容
- pwd 查看当前完整路径
4、解压缩等命令
打包
tar -cvf 打包后的文件名 目录名 (ps:默认将打包后的文件放在当前目录下 )
-c 建立压缩文件的参数命令
-v 显示指令执行过程
-f 指定备份文件
解包
tar -xvf 已经打包的文件 -C 指定目录 在指定目录下解包 (ps:不加-C表示默认解压到当前目录下)
-x 解压缩文件的参数命令
压缩
tar -zcvf 压缩后的文件名 目录名
-z 通过gzip指令压缩
解压缩
tar -zxvf 已经压缩的文件 -C 指定目录 在指定目录下解压 (ps:不加-C表示默认解压到当前目录下)
常用命令:
- ps -aux | grep 进程名 查看当前文件的进程号
- kill 进程号 杀死一个进程
- kill -9 进程号 强制杀死某个进程
- top 根据消耗的资源,从上之下排序
- man 命令 帮助命令,查看命令的用法
- 命令 --help 帮助命令,查看命令的用法
- ctrl+c 强制终止, 不会终止进程
- ctrl+z 强制终止, 终止进程
- clear 清除命令行终端中的内容
- ctrl+l 快捷键, 快速清除终端中的内容
二、创建修改用户
1、创建用户并指定用户所属组:
useradd -m 用户名 -m表示自动建立用户的登入目录(在/home目录下创建一个与用户名相同名的目录名)
-g 指定用户所属的主组
-G<群组>:指定用户所属的附加组;
注:linux中,一个用户只能添加到一个主组, 但可以添加到多个附加组,添加到了多个附加组,就
拥有多个组的权限,附加组可以直接删除,但删除主组之前必须先删除主组中的所有用户。
设置用户密码:
passwd 用户名
2、删除用户
userdel -rf 用户名 -f:强制删除用户 -r:删除与用户相关的所有文件(默认情况只删除用户,但不删除用户的文件)
3.修改用户信息
usermod 选项 用户名
选项: -l 修改账号的名称(新用户名 老用户名)
-L 锁定账号
-U 解除锁定
4、查看用户所属的组
groups 用户名
格式: 用户名:主组名 附加组1 附加组2
注: 在linux中创建用户的时候,如果没有指定组名,linux会自动的创建一个与用户名同名的组,并自动的将该用户加入到该组
三、创建修改组
1.创建一个组
groupadd -g 新建工作组的id 组名 注:-g 指定新建工作组的id,选填
2.修改一个组名
groupmod -n 新名字 原名字
3.查询组信息
cd /etc
cat group
存放格式: 组名:组的密码:组的id;
4.删除某个组
groupdel 组名
四、文件的权限
在linux中通过设置文件的权限来设置各个用户及组的权限
1、查看当前目录下文件的权限 命令:ll
表现形式:
drwxr-xr-x 10个字母用来表示一个文件的权限
第1个字母:表示的是文件的类型
d 代表当前是目录
l 代表当前是一个链接文件
- 代表当前是文件
第2-4个字母: 表示的的是当前用户的权限
r 表示可读
w 表示可写
x 表示可执行
- 表示无权限
第5-7个字母: 表示当前组的权限
第8-10个字母: 表示其他组的权限
2、设置文件权限
方法一:
格式: chmod ugoa +-= rwx- 文件名
ugoa:
u user 代表当前用户
g group 代表当前组
o other 代表其他组
a all 代表全部
+ 添加某个权限
- 去掉某个权限
= 重新设置权限
例:
将自己添加一个可执行权限
chmod u+x aa.txt
将所有用户的权限都改成只可读
chmod a=r aa.txt
将自己和自己所在的组添加一个可执行权限
chmod ug+w aa.txt
将自己修改为rwx权限
chmod u=rwx aa.txt
方法二:
将权限用一个值表示:
x 1
w 2
wx 3
r 4
rx 5
rw 6
rwx 7
格式: chmod 值1值2值3 文件名
值1是当前用户
值2是当前组
值3其他组
例:
将所有用户的权限都改成可读写执行
chmod 777 aa.txt
常用命令补充
sudo vim ~/.bashrc 编辑环境变量
source ~/.bashrc 刷新环境变量
python和命令行结合:可以在/usr/bin下面编写一个python的可执行文件,不一定需要.py结尾(可通过sudo chmod xxx xxx将其变成一个可执行文件),然后配置环境变量,刷新,然后就可以当做一个linux命令使用。
fdisk -l 查看系统所有硬盘的分区情况
主要信息有:系统一共几块硬盘,每块硬盘的容量大小,每块硬盘的分区情况,硬盘空间是否还有空余。
分区步骤:
1.fdisk 设备名称 (/dev/sdb)
2.partx -a /dev/sdb (如果分区没有生效的话,使用该命令让系统重新加载分区情况)
3.格式化分好的区 (mkfs.ext4 /dev/sdb6)
4.挂载 (mount /dev/sdb6 /mnt)(临时生效 )
修改/etc/fstab (永久生效)
文件系统:ext2,ext3,ext4,xfs
block:linux操作系统管理文件的最小(逻辑)单位 (1k,2k,4k)
未完待续。。。