Linux小技巧python
Linux
查看CPU信息linux
more /proc/cpuinfo # 查看cpu信息 lscpu # 查看cpu信息 cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c # 查看cpu型號和邏輯核心數 getconf LONG_BIT # cpu運行的位數 cat /proc/cpuinfo | grep 'physical id' |sort| uniq -c # 物理cpu個數 cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l # 結果大於0支持64位 cat /proc/cpuinfo|grep flags # 查看cpu是否支持虛擬化 pae支持半虛擬化 IntelVT 支持全虛擬化
python:
快速統計可迭代對象元素個數排名git
# collections.Counter lets you find the most common # elements in an iterable: >>> import collections >>> c = collections.Counter('helloworld') >>> c Counter({'l': 3, 'o': 2, 'e': 1, 'd': 1, 'h': 1, 'r': 1, 'w': 1}) >>> c.most_common(3) [('l', 3), ('o', 2), ('e', 1)]
Linux
查看系統硬件信息github
more /proc/meminfo # 查看內存信息 dmidecode # 查看全面硬件信息 dmidecode | grep "Product Name" # 查看服務器型號 dmidecode | grep -P -A5 "Memory\s+Device" | grep Size | grep -v Range # 查看內存插槽 cat /proc/mdstat # 查看軟raid信息 cat /proc/scsi/scsi # 查看Dell硬raid信息(IBM、HP須要官方檢測工具) lspci # 查看硬件信息
python:
運用python切片技巧web
# You can clear all elements from a list: >>> lst = [1, 2, 3, 4, 5] >>> del lst[:] >>> lst [] # You can replace all elements of a list # without creating a new list object: >>> a = lst >>> lst[:] = [7, 8, 9] >>> lst [7, 8, 9] >>> a [7, 8, 9] >>> a is lst True # You can also create a (shallow) copy of a list: >>> b = lst[:] >>> b [7, 8, 9] >>> b is lst False
iptables實現端口映射docker
# 內網經過有外網IP的機器映射端口 # 內網主機添加路由 route add -net 10.10.20.0 netmask 255.255.255.0 gw 10.10.20.111 # 內網須要添加默認網關,而且網關開啓轉發 # 網關主機 echo 1 > /proc/sys/net/ipv4/ip_forward # 在內核裏打開ip轉發功能 iptables -t nat -A PREROUTING -d 外網IP -p tcp --dport 9999 -j DNAT --to 10.10.20.55:22 # 進入 iptables -t nat -A POSTROUTING -s 10.10.20.0/24 -j SNAT --to 外網IP # 轉發回去 iptables -t nat -nL # 查看轉發
python推導式運用express
# Python's list comprehensions are awesome. vals = [expression for value in collection if condition] # This is equivalent to: vals = [] for value in collection: if condition: vals.append(expression) # Example: >>> even_squares = [x * x for x in range(10) if not x % 2] >>> even_squares [0, 4, 16, 36, 64]
網絡相關基礎命令服務器
rz # 經過ssh上傳小文件 sz # 經過ssh下載小文件 ifconfig eth0 down # 禁用網卡 ifconfig eth0 up # 啓用網卡 ifup eth0:0 # 啓用網卡 mii-tool em1 # 查看網線是否鏈接 traceroute www.baidu.com # 測試跳數 vi /etc/resolv.conf # 設置DNS nameserver IP 定義DNS服務器的IP地址 nslookup www.moon.com # 解析域名IP dig -x www.baidu.com # 解析域名IP
python內置httpserver,快速測試網絡
# Python has a HTTP server built into the # standard library. This is super handy for # previewing websites. # Python 3.x $ python3 -m http.server # Python 2.x $ python -m SimpleHTTPServer 8000 # (This will serve the current directory at # http://localhost:8000)
docker鏡像製做小技巧
基礎鏡像使用alpine,若是鏡像中要運行的是C程序的話就要本身安裝glibc,如jdk也是C開發的,因此在安裝jdk的時候就要先安裝glibc
alpine:3.9-glibc 鏡像的dockerfile以下app
FROM alpine:3.9 MAINTAINER Andy_f<rg_fan@163.com> ENV LANG=C.UTF-8 RUN echo http://mirrors.ustc.edu.cn/alpine/v3.9/main > /etc/apk/repositories && \ echo http://mirrors.ustc.edu.cn/alpine/v3.9/community >> /etc/apk/repositories &&\ apk --no-cache add ca-certificates && \ wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub && \ wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.29-r0/glibc-2.29-r0.apk && \ apk add glibc-2.29-r0.apk && \ rm -rf glibc-2.29-r0.apk && \ apk add tzdata && \ cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ apk del tzdata && \ apk add curl # end # RUN 指令註解 # 增長中國科技大學的alpine鏡像站點到docker鏡像中 # 安裝CA證書 # 下載alpine軟件倉庫的公鑰文件 # 下載glibc2.29 # 安裝glibc # 刪除glibc安裝包 # 安裝時區管理工具 # 設置時區爲上海 # 刪除時區文件包 # 安裝curl # 以上是安裝glibc及設置時區和安裝一些工具的指令,若是本身還須要安裝其餘的,直接在curl 後面添加步驟便可
更多歷史小技巧,技術交流,崗位內推訪問:馬哥社區