Linux 便笺技巧专栏
生活随笔
收集整理的這篇文章主要介紹了
Linux 便笺技巧专栏
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 一、 vi 專欄
- 二、固定ip設置
- 2.1. 自動獲取改為靜態
- 2.2. IDADDR獲取
- 2.3. GATEWAY獲取
- 2.4. 重新網卡
- 2.5. 重新連接
- 三、主機名調整
- 3.1. 臨時有效主機名
- 3.2. 永久有效主機名
- 四、防火墻調整
- 4.1. 臨時關閉防火墻
- 4.2. 開機不啟動防火墻
- 五、shell腳本
- 5.1. shell格式
- 5.2. shell執行
- 5.3. shell中的變量
- 六、shell邏輯判斷表達式
- 6.1. for循環
- 6.2. while循環
- 6.3. if判斷
- 6.4. 后臺運行shell
- 6.5. shell輸出
- 七、crontab
- 7.1. crontab 簡述與格式
- 7.2. 常用命令
- 7.3. 追加日志
一、 vi 專欄
| 顯示行數 | 按左上角esc :set nu |
| 跳轉首行 | gg |
| 跳轉末尾 | G |
| 跳轉當前行首 | Home |
| 跳轉當前行末 | End |
| 跳轉指定行 | 按左上角esc :行號 |
| 復制當前行 | yy |
| 粘貼到下一行 | p |
| 刪除當前行以及下面所有行 | 999+dd |
| 查找關鍵詞 | /關鍵詞 按回車 按n查找下一個 |
| 保存編輯 | 按左上角esc :wq |
| 退出編輯,不保存 | 按左上角esc :q! |
二、固定ip設置
2.1. 自動獲取改為靜態
cd /etc/sysconfig/network-scripts/ vi ifcfg-ens33將dhcp改為static2.2. IDADDR獲取
添加
IPADDR=ip地址 GATEWAY= DNS1=
子網ip段是192.168.92,后面的3-255自定義即可
如果想調整網段,調整完成后點擊應用即可
2.3. GATEWAY獲取
DNS1=網關即可
2.4. 重新網卡
#centos7.x RedHat7.x systemctl restart network#centos6.x RedHat6.x service networkrestart2.5. 重新連接
客戶端重新連接
三、主機名調整
3.1. 臨時有效主機名
hostname 主機名3.2. 永久有效主機名
vi /etc/hostname 添加主機名# 重啟服務器 reboot#防火墻臨時關閉#開機不啟動防火墻臨時關閉四、防火墻調整
4.1. 臨時關閉防火墻
systemctl stop firewalld4.2. 開機不啟動防火墻
systemctl disable firewalld五、shell腳本
5.1. shell格式
#!/bin/bash5.2. shell執行
# 第1種 sh xx.sh# 第2種 bash xx.sh# 第3種 chmod u+x xx.sh ./xx.sh# 第4種 配置環境變量. xx.sh5.3. shell中的變量
- 變量不需要聲明,初始化也不需要指定類型
- 變量命名:只能使用數字、字母和下劃線,且不能以數字開頭
- 變量賦值:通過“=”進行復制,在變量、等號和值之間不能出現空格!
六、shell邏輯判斷表達式
6.1. for循環
格式1:適用于有規律的for循環
for((i=0;i<10;i++)) do 循環體。。。 done案例:
#!/bin/bash for((i=0;i<10;i++)) do echo $i done格式2:適用于沒有規律的for循環
for i in 1 3 5 do 循環體。。。 done案例2:
#!/bin/bash for i in 1 3 5 7 do echo $i done6.2. while循環
- 適用于循環次數未知,或不便于使用for直接生成較大列表時
- 測試條件為“真”,則進入循環,測試條件為“假”,則退出循環
基本格式:
whlie 測試條件 do 循環體。。。 done測試條件:
- 格式:test EXPR 或者 [ EXPR ] 中括號和表達式之間的空格不能少
- 整型測試: -gt(大于)、-lt(小于)、-ge(大于等于)、-le(小于等于)、-eq(等于)、-ne(不等于)
- 字符串測試:=(等于)、!=(不等于)
整型測試:
#!/bin/bash while test 2 -gt 1 do echo yes sleep 1 done推薦使用第2種
#!/bin/bash while [ 2 -gt 1 ] do echo yes sleep 1 done字符串測試:
#!/bin/bash while [ "qbc" = "qbc" ] do echo yes sleep 1 done6.3. if判斷
單分支
#格式: if 測試條件 then選擇分支 fi案例
#!/bin/bash flag=1 if [ $flag -eq 1 ] thenecho one fi雙分支
#格式: if 測試條件 then選擇分支1 else選擇分支2 fi案例
#!/bin/bash flag=1 if [ $flag -eq 1 ] thenecho one elseecho "not support" fi多分支
#格式: if 測試條件 then選擇分支1 elif 測試條件 then選擇分支2... else選擇分支n fi案例
#!/bin/bash flag=2 if [ $flag -eq 1 ] thenecho one elif [ $flag -eq 2 ] thenecho two elseecho "not support" fi6.4. 后臺運行shell
nohup xxx.sh &6.5. shell輸出
標準輸出1 標準錯誤輸出2 重定向> 追加>> nohup bash xxx.sh >/dev/null 2>&1 & 1是正確輸出,可以省略 2是錯誤輸出 &1 是引用標準輸出1七、crontab
7.1. crontab 簡述與格式
格式1:適用于有規律的for循環
crontab作用于周期性白執行的命令 :每天凌晨1點去“偷菜”格式: # For details see man 4 crontabs# Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed7.2. 常用命令
# 查看crontab服務狀態 systemctl status crond# 啟動crontab服務 systemctl start crond# 關閉crontab服務 systemctl stop crond#添加定時任務 vim /etc/crontab案例:
輸出日期時間,格式為yyyy-MM-dd HH:mm:ss
7.3. 追加日志
執行腳本過程中,記錄日志,輸出到指定文件
* * * * * root sh /root/showTime.sh >> showtime.log總結
以上是生活随笔為你收集整理的Linux 便笺技巧专栏的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: docker 配置nginx镜像出现 4
- 下一篇: ./mysqld: error whil