※[选项]都是根据需求可有可无的
※[文件夹名]跟[文件名]如果你在他们当前目录下,直接输入名字即可,不然要在名字前面加上他们的绝对路径
查询目录中的内容
ls [选项] [文件或目录]
选项:
-a 显示所有文件,包括隐藏文件
-l 显示详细信息
-d 查看目录属性
-h 个性化显示文件大小
-i 显示inode
用户管理
useradd [选项] [用户名] //添加用户
-g 指定用户所属的用户组
-d 指定用户主目录
eg:useradd -g root czx
添加一个czx用户并且添加到root用户组
userdel [用户名] //删除用户
usermod //修改用户
eg:usermod -a -G root czx
将czx用户添加到root用户组
passwd [选项] [用户名] //修改密码
-l 锁定口令,即禁用账号
-d 删除密码
-u 口令解锁
-d 使账号无口令
用户组管理
groupadd [选项] [用户组名] //添加用户组
-g 指定新用户组的组标识号(GID)
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同
groupdel [用户组名] //删除用户组
groupmod [选项] [用户组名] //修改用户组
eg:groupmod -n xcc dcc
将dcc用户组改名为xcc
目录及文件基本操作
mkdir [选项] [目录位置加目录名] //建立目录
-p 递归创建
eg:mkdir -p
rmdir 删除目录
注意:删除目录时请确保目录为空,不会包含其他文件或目录
cd [路径] //改变所在目录
cd / //转到跟目录
cd ~ //转到家目录
mv [要移动的文件] [移动到的位置] //重命名目录/移动文件或目录
点号(.) 一个点(.)表示当前目录,两个点(..)表示上级目录
vi [文件名] //创建/编辑文件
touch [文件名] //创建空文件
cat [文件名称] //查看文件内容
-b 显示行号
cp [要复制的文件名] [复制后的文件名] //复制文件/目录
eg: cp a b
将当前目录下文件a复制一份并命名为b
eg: cp a /b
将当前目录下文件a复制一份到跟目录下并命名为b
rm [选项] [文件名称] //删除文件
-f 强制删除,忽略不存在的文件,不提示确定。全用强制删除就好。
-r 递归删除目录及其内容
连接命令
ln -s [源文件][目标文件]
-s 创建软连接(俗称,快捷方式)
系统权限
从开头d后开始,三个字符表示文件属主的三个权限,再三个字符表示用户组的三个权限,最后三个表示其他用户的三个权限。
r:读权限
w:写权限
x:执行权限
-:没有权限
chmod 修改权限
+ 增加权限
- 删除权限
= 制定权限
eg:chmod a+r file1.txt
将文件 file1.txt 设为所有人皆可读取,a表示所有人,r表示写权限
eg:chmod u+x ex1.py
将 ex1.py 设定为只有该文件拥有者可以执行,u表示文件拥有者,x表示写权限
eg:chmod a=rwx file
将file设定为,所有人都有读写执行权限
另外:r=4,w=2,x=1
若要rwx属性则为7
若要rw-属性则为6
若要r--属性则为4
eg:chomd 764 file
改变file文件的权限,拥有者具有所有权限,用户组只有读写权限,其他用户只有读权限
压缩与解压
zip[压缩后文件名][源文件]
-r 压缩目录
unzip[文件名]
tar -cvf [压缩后文件名][源文件]
-c 压缩
-v 显示过程
-f 制定压缩后的文件名
-z 通过gzip过滤档(压缩成.gz)
-c 制定目录(加载压缩文件名后)
tar -xvf [文件名]
-x 从归档中解出文件
磁盘管理
df 查看磁盘分区的使用状况
-l 仅显示本地磁盘
-a 显示所有文件系统的磁盘使用情况,包括比如/proc/(0字节的分区)
-h 以1024进制计算并以最合适的单位显示磁盘容量
-H 以1000进制计算并以最合适的单位显示磁盘容量
-T 显示磁盘分区类型
-t 显示制定类型文件系统的磁盘分区
-x 不显示制定类型文件系统的磁盘分区
du 统计磁盘上的文件大小
-b 以byte为单位统计文件
-k 以kb为单位统计文件
-m 以mb为单位统计文件
-h 按照1024进制以最适合的单位统计文件
-H 按照1000进制以最适合的单位统计文件
-s 制定统计目标(比如统计某个指定的文件夹)
fdisk 磁盘分区表操作工具
-v 打印fdosk的版本信息并推出
-l 列出指定设备的分区表信息并退出,没有指定参数则列出所有分区
mkfs 格式化分区
-t mkfs -t [分区名] 接文件系统格式,例如ext3,ext2,vfat等(系统有支持才会生效)
mount 磁盘挂载
-t 文件系统
-L lable名
-o 额外选项
-n 装置文件名
umount 磁盘卸除
-f 强制卸除
-n 不升级
软件管理
rpm 软件包管理系统
rpm -i(or --install) options file.rpm 安装到哪里去的什么软件包
-v 显示附加信息
-h 以#显示进度,每个#表示2%
-q -q[包名]查询指定的包是否已经安装
-qa 查询已经安装的所有包
-uvh 升级软件包,如无老版本直接安装
-fvh 如果有老版本软件包则升级,否则退出
-e 移除安装包
yum 添加、删除、更新rpm包
yum[选项][命令][rpm包]
选项:
-y 自动应答
-e 静默执行
-t 忽略错误
-R [分钟]设置等待时间
命令:
yum install [rmp包名] //安装包
yum update [rmp包名] //更新包
yum remove [rmp包名] //卸载包
计划任务
crontab 定时执行操作命令
-e 设置计时器
-l 列出当前计时器的设置
-r 删除计时器的设置
-i 交互式模式,删除计时器设置时要先询问
crontab数据列解释
第一列 表示分钟1~59,每分钟用*或*/1表示(*/5)
第二列 表示小时1~23,0表示0点
第三列 表示日期1~31
第四列 表示月份1~12
第五列 表示星期0~6,0表示星期天
第六列 表示要执行的命令
性能检测
检测CPU
cat/proc/cpuinfo
显示出主机CPU详细参数,如内核、频率、型号等
检测内存
cat/proc/meminfo
查看主机内存信息,如内存大小、交换空间、高速缓存等
磁盘读写速度
dd if=/dev/zero of=test bs=64k count=4k oflag=dsync
dd if=/dev/zero of=test bs=8k count=256k conv=fdatasync
宽带测试
搜索linux测试网速工具
cd speedtest-cli
./speedtest.py
网络管理
ifconfig 配置IP地址(临时)
ifconfig 网卡名 IP nermask 子网掩码
例 ifconfig ens33 192.168.2.2 network 255.255.255.0
修改网络配置文件配置IP地址
网卡信息文件 /etc/sysconfig/network=scripts
vi/etc/sysconfig/network-scripts/ifcfg-ens33
IPADDR=192.168.111.111 #IP地址
NETMASK=255.255.255.0 #子网掩码
GATWAY=192.168.146.2 #网关
把BOOTPROTO="static" #是否自动获取IP(取值范围none static dhcp)
netstat 查看网络连接状态
-t 列出TCP协议端口
-u 列出UDP协议端口
-n 不适用域名或服务名,而是用IP地址和端口号
-l 仅列出监听状态网络服务
-a 列出所有网络连接
内核模块
uname 内核信息获取
-a 显示内核所有信息
-v 内核的编译版本号
-r 内核的release发行号
-n 主机名
Lsmod 列出内核模块
modinfo 显示指定的模块的详细信息
-k 多内核并存时若要查询另外一个kernel上的模块信息
-f 仅显示指定字段的信息
-n 显示文件路径
shell编写九九乘法表
vim czx.sh
//创建并且编写shell文件
vim是vi的升级版本,vim没安装就用vi
按i进入编辑模式,然后把下图的代码敲进去,注意空格。
敲完后按一下Esc退出编辑模式,然后按:wq三个键保存退出
chmod 777 czx.sh
//改变用户权限
./czx.sh
//运行