- 1.1 前言
- 1.2 用法示例
- 1.2.1 显示用法
- 1.2.2 禁用交换分区
- 1.2.3 开启交换分区
- 1.2.4 查看交换分区开启状态
- 1.3 源码
- 1.4 参考资料
本篇博文分享如何通过sh脚本控制交换分区的开启和禁用。
1.2 用法示例 1.2.1 显示用法sh swap-manager.sh1.2.2 禁用交换分区
sh swap-manager.sh disable1.2.3 开启交换分区
sh swap-manager.sh enable1.2.4 查看交换分区开启状态
sh swap-manager.sh enable1.3 源码
#!/bin/bash
function disableSwap(){
ID= findSwapLine
# 检查是否有问题
if cat '/etc/fstab' | grep "#/dev" > /dev/null
then
echo '交换分区已禁用'
cat /etc/fstab
exit 0
fi
cp /etc/fstab /etc/fstab.bak
# 删除swap所在的行
# sed -i $ID'd' /etc/fstab
# 注释swap所在的行
sed -i $ID's/^/#&/g' /etc/fstab
echo '交换分区禁用成功'
cat /etc/fstab
}
function findSwapLine(){
ID=`sed -n '/swap/=' /etc/fstab`
}
function enableSwap(){
if [ -f '/etc/fstab.bak' ];then
cp /etc/fstab.bak /etc/fstab
fi
echo '交换分区启用成功'
cat /etc/fstab
}
function showSwap(){
cat /etc/fstab
}
case $1 in
enable)
enableSwap
;;
disable)
disableSwap
;;
status)
showSwap
;;
*)
echo "Usage: $0 {enable|disable|status}"
exit 1
;;
esac
exit $RETVAL
1.4 参考资料
- shell判断文件中是否包含字符串
- sed命令用法



