ls:
-a 显示所有文件,包括隐藏
-l 显示详细信息
-d 查看目录属性
-h 人性化显示文件大小,即单位为k,m,g
-i 显示 inode
ll = ls -l
mkdir -p [目录名]
-p 递归创建 eg. mkdir test/test2
ctrl+l 清屏
cd - 进入上次目录
命令 + 两次Tab键 : 提示
rmdir 只能删除空目录(基本不用)
rm 删除文件
-r 删除文件夹
-f 强制删除 故 rm -rf 强制删除文件或者目录
cp 复制 cp 源文件 目的地 (可改名)
-r 复制目录
-p 连带文件属性复制
-d 若源文件是链接文件,则赋值链接属性
-a 相当于 -pdr ,即复制后的文件与源文件完全一样
mv 剪切 用法与cp基本相同,只是剪切目录时不需要-r参数
mv命令还可以用来给文件更改名字 eg. rm asd dsa
文件搜索命令:
locate + 文件名
在后台数据库中按文件名搜索,搜索速度快,数据库位于 /var/lib/mlocate
注意数据库不是实时更新的。
updatedb 强制更新数据库
find [搜索范围] 【搜索条件】
-name 搜索结果必须与搜索条件完全一致 eg. find /home -name asd
-iname 不区分大小写搜索
-user 按照所有者搜索 eg. find /root -user root
-nouser 查找没有所有者的文件 通常是垃圾文件
-inum 根据inode查找文件 eg. find /root -inum 262421
grep [选项] 字符串 文件名: 在文件中匹配符合条件的字符串
-i 忽略大小写
-v 排除指定字符串
linux中的通配符:
* 匹配任意内容
?匹配任意一个·字符
[] 匹配任意一个中括号内的字符
命令搜索命令:
whereis + 命令名
-b 只查找可执行文件
-m 只查找帮助文件
不能搜索普通文件
which + 命令名:显示命令路径,若有别名则打印出别名.
man + 命令 :显示命令帮助手册
help + 内部shell命令(如cd) 查看shell内部命令帮助 只能查看内部命令
文件压缩与解压缩:
zip 压缩文件名 源文件 :压缩单个文件
zip -r 压缩文件名 源目录 :压缩目录
unzip + 压缩文件:解压缩
gzip 源文件: 压缩为.gz格式的压缩文件,源文件会消失
gzip -c 源文件 > 压缩文件 :压缩为.gz格式,源文件会保留 //不常用
gzip -r + 目录 :压缩目录下的所有子文件,但是不压缩目录
gzip -d 压缩文件: 解压缩
gunzip 压缩文件: 解压缩
打包命令tar:
tar -cvf 打包文件名 源文件
-c 打包
-v 显示过程
-f 指定打包后的文件名
tar -zcvf
:打包并压缩为.tar.gz格式
末尾解参数 -C 路径 解压到指定路径
解包:
tar -xvf 打包文件名
-x: 解包
-zxvvf 解压缩并解包 .tar.gz文件
关机、重启:
shutdown [选项] 时间
-c: 取消前一个关进命令
-h: 关机
-r: 重启
挂载:
mount : 查询系统中已经挂载的设备
-a :根据配置文件/etc/fstab的内容,自动挂载
mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
unmount 设备名或挂载点:卸载
fdisk -l :查看外设
用户操作:
w/who 用户名:查看用户登陆信息
last :系统所有用户登陆信息
lastlog: 系统所有用户最后一次登陆信息
常用快捷操作:
ctrl+c :强制终止当前命令
ctrl+l :清屏
ctrl+a :光标移动到命令行首
ctrl+e :光标移动到命令行尾
ctrl+u :从光标所在位置删除到行首
ctrl+z :把命令放入后台
ctrl+r :在历史命令中搜索
多命令执行:
命令1 ; 命令2 :两条命令之间没有任何逻辑顺序。
命令1 && 命令2 :命令1正确执行才会执行命令2,若命令1未正确执行,则不执行命令2.
命令1 || 命令2 :命令1执行失败才会执行命令2,若命令1正确执行,则不执行命令2.
管道符
命令1 | 命令2 : 命令1的正确输出作为命令2的操作对象。
查看本机启用的端口
netstat:
-a :查看所有连接的监听端口
-n :显示IP地址和端口号,而不显示域名和服务名
配置网络:
网卡信息文件: vi /etc/sysconfig/network-scripts/ifcfg-eth0
DNS配置文件: vi /etc/resolv.conf
ifconfig: 查看与临时配置网络
ifdown+网卡设备名: 禁用该网卡
ifup+网卡设备名: 启用该网卡
netstat
-t 列出TCP协议端口
-u 列出TCP协议端口
-n 不适用域名与服务名,而使用IP地址和端口号
-l 仅列出在监听状态的网络服务
-a 列出所有网络连接
wget + URL 下载文件
tcpdump 抓包 使用方法见百度
ssh远程登录:
ssh 用户名@ip 远程登录指定linux服务器
scp [-r] 用户名@ip:文件路径 本地路径 从指定ip出下载文件到本地
scp [-r] 本地文件 用户名@ip:上传路径 将本地文件上传至指定服务器
rpm安装包的使用
若操作的包是没有安装的,则安装时要使用包全名并且要注意路径。
若操作的包是已经安装的,使用包名,因为所有安装过的rpm包都在 /var/lib/rpm下
rpm -ivh 包全名
-i 安装
-v 显示详细信息
-h 显示进度
- --nodeps 不检测依赖性(可能导致无法使用)
-U 升级(包全名)
rpm -q 包名 :查询是否安装包
rpm -qa:列出所有已经安装的rpm包
-e 卸载 (包名)
rpm -qi 包名
-i 查询软件信息
-q 查询未安装包信息
rpm -qf 系统文件:查看系统文件属于哪个包
rpm -V 已安装的包名:校验rpm包
yum命令:
yum list 查询yum源所有的软件包
yum search 关键字:搜寻相关安装包
yum -y install 包名:安装包
-y :自动回答yes
yum -y update 包名:升级包
yum -y remove 包名:卸载包
yum grouplist:查询组包
yum groupinstall 软件组名:安装指定软件组
yum groupremove 软件组名:卸载指定软件组
安装源码包:
1.解压源码包。
2.进入解压后的源码包目录。
3.执行 ./configure –prefix=安装目录(通常在/usr/local/下)
作用:定义需要的功能选项
检测系统环境是否合安装要求
把定义好的功能选项和检测系统环境的信息都写入MakeFile文件,用于后续的编辑。
4.make编译
make clean:清楚编译后的缓存文件
make install:编译安装
chmod 读写权限(755……) 文件名 :更改文件权限
-R :递归,适用于目录文件
chown username filename :更改文件所有者
chgro groupname filename:更改文件组所有者
///////////////////////////////////////////////////////////////////////////
shell编程
“变量名”字符:在原变量后追加字符eg:x=1y=”x”2
则 echo y将打印12也可{变量名}字符 也是在变量后追加字符串
set :查询系统下所有已经生效的变量
-u 当查询没定义的变量时,系统给出错误提示
unset 变量名 :删除变量
用户自定义环境变量
export 变量名=变量值 或 变量名=变量值 然后 export 变量名
env 查看环境变量
换行符 : “\” ,若一条命令太长可用换行符转到第二行接着打。
预定义变量:
?:最后一次执行命令的返回状态,如果这个值为0,则表明上一个命令执行正确;如果为非零,则表明上一条命令未能正确执行。$ :返回当前进程的PID号
read 命令:接收键盘输入
declare [+/-] [参数] 变量名
-:给变量设定类型属性 eg -i 声明为整形
+:取消变量的类型属性
数值运算:
((运算式))或[运算式] eg: a=((b+$c))
source + 配置文件 / . + 配置文件 :使对配置文件的修改立即生效而不用重启系统
注意正则表达式与通配符的区别,两者是不同的概念。
cut :提取字符串
cut [选项] 文件名: 提取指定列 (默认以TAB及制表符分割列)
-d :自定义分隔符,默认为制表符。
-f :指定显示的列数
awk ‘条件1{动作1}条件2{动作2}条件3{动作三}……’
当条件满足时,对应的动作就会执行
sed (Stream Editor)
sed [选项] ‘[动作]’ 文件名
排序命令 sort
sort [选项] 文件名
-f 忽略大小写
-n 以数值型进行排序,默认使用字符串排序
-r 反向排序
-t 指定分隔符 默认是制表符
-k [n,m] 按照指定的字段范围排序,从第n字段开始,第m字段结束
wc [选项] 文件名:统计命令
-l :只统计行数
-w :只统计单词书
-m :只统计字符数
判断文件是否存在:
[ 参数 + 文件名 ]