欢迎各位兄弟 发布技术文章
这里的技术是共享的
立即咨询 按钮跳动 弹跳
ps是一款非常强大的作图软件,但是我们平时设计网页和app会涉及到切图,这里就要说切图工具cutterman了。cutterman十分好用,切图一键搞定
随着苹果 macOS Mojave 正式版发布,很多使用 M
对于用惯了 Windows 系统的小伙伴来说,如果是第一次使用苹果电脑,对于怎样用 U 盘启动盘安装苹果系统一定陌生得很,不知道该从哪里下手。
1) 使用360 人工服务 找解决问题的办法
2) 使用360系统急救箱 应该是这种方法
3)
在如今这个社会时代中,人们对网络的需求是极其大的,可谓是宁可以一日不食肉,也不可无网。win7无线网络消失不见了,不知道小伙伴你们有没有遇到这该问题呢?下面分享一下win7无线网络连接消失不见了的解决办法。
方法一:
状态栏的网络图标不见了?小伙伴们,当你们在使用电脑的时候遇到了状态栏的网络图标的不见了的时候,你们知道应该怎么才能将这个问题给解决好吗?不知道的话,不妨可以来看看小编在下边给你们分享的解决这个问题的详细操作方法啊。
我们电脑的右下角一般都会显示一些常用的小图标,比如网络连接,声音设置,或者其他的,但是如果发现自己的网络连接图标不见了,怎么办呢?
http://www.cutterman.cn/zh
http://www.cutterman.cn/zh/cutterman
https://blog.csdn.net/qq_40308150/article/details/78720635
https://www.cnblogs.com/tu-0718/p/9745725.html
https://jingyan.baidu.com/article/ed2a5d1f8e548209f6be17a4.html
Load Balancer后端Nginx封IP的方法
set $allow true;
if ($http_x_forwarded_for ~ " ?82.245.163.1$") {
set $allow false ;
}
if ($allow = false) {
return 403;
网络相关基础命令
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
iptables实现端口映射
# 内网通过有外网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:
python推导式运用
# Python's list comprehensions are awesome.
终端提示显示
echo $PS1 # 环境变量控制提示显示
PS1='[\u@ \H \w \A \@#]\$'
PS1='[\u@\h \W]\$'
python3语法注解
# Python 3.5+ supports 'type annotations' that can be
# used with tools like Mypy to write statically typed Python:
def my_add(a: int, b: int) -> int:
return a + b
更多历史小技巧,技术交流,岗位内推访问【马哥社区 club.magedu.com】
# 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]
[7, 8, 9]
>>> a
>>> a is lst
True
# You can also create a (shallow) copy of a list:
>>> b = lst[:]
>>> b
>>> b is lst
查看系统硬件信息
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 # 查看硬件信息
按value排序字典
Python的内置字典数据类型是无序的,而key可以被用来获取对应的value。有时我们需要根据value对字典中的item进行排序输出。方法如下所示:
方法一:用sorted函数排序,其中key参数是lamda表达式。
a = {'a':100,'b':20, 'c':150, 'd':1}
print(sorted(a.items(), key=lambda x:x[1]))
方法二:用operator.itemgetter而不是lamda表达式进行排序。
from operator import itemgetter
print(sorted(a.items(), key=itemgetter[1]))
方法三:如果只需得到排序后的key,可用.get
print(sorted(a, key=a.get()))
程序运行时,终端可能输出大量的日志,你想简单查看一下,又不想记录日志文件,此时可以使用ctrl+s键,冻结屏幕,使得日志不再继续输出,而如果想要恢复,可使用ctrl+q退出冻结。
计算程序运行时间
有时候执行一个命令或者脚本的的时候需要知道命令执行了多久,那么可以用time command,例如
shell> time backup.sh
real0m0.014s
user0m0.001s
sys0m0.013s
链式比较
如果想输出数组中介于4-7之间的元素,java是这么写的:if( b > 4 && b < 7){ },但Python更人性化。包括最后一句1 == b < 20,这和C、java也很不一样。
a = 1
print(0<a<2)
print(1==a < 20)
有时候日志文件是压缩的,那么不解压查看可以用zcat或者zless
shell> zcat log2019.tar.gz
198.167.223.52 - - [24/Apr/2019:06:40:05 +0800] "GET /acadmin.php HTTP/1.1" 404 564 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36" "-"
103.39.9.213 - - [24/Apr/2019:06:47:57 +0800] "GET / HTTP/1.1" 200 3700 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36" "-"
查看压缩包内容
有时候不想把压缩文件解压,而只是想看一下压缩文件里面都有什么内容,那么可以用:
shell> tar -tf demo.tar.gz
a/
b/
c/
获取当前目录下占用空间最大的5个文件或目录
cd /
du -hsx * | sort -rh | head -5
1.1T /backup
876G /data
3.5G /usr
1.3G /var
1.3G /root
内容来自马哥社区 http://club.magedu.com/topic/5cdcfd3631bf712c432d07b6
通过java启动的tomcat进程获取catalina.home目录
1,获取tomcat进程ID
jps | grep Bootstrap
27057 Bootstrap
2,通过进程ID来获取进程信息并过滤出自己想要的信息
ps -ef | grep 27057|grep -v grep | sed -r 's/.*-Dcatalina.home=(\S+)\ .*/\1/'
/usr/local/tomcat
# 为什么要用sed而不是awk呢?
# 因为tomcat进程中的命令段的长度不是固定的.用awk无法确切的获取到
# 假如说某台主机为了调试或是怎样.需要开启JMX的端口,这个时候tomcat进程的命令段就会多出一些信息
# 上面1 、 2中的命令合为1条如下
ps -ef | grep `jps | grep Bootstrap| awk '{print $1}'`|grep -v grep | sed -r 's/.*-Dcatalina.home=(\S+)\ .*/\1/'
使用md5sum 命令对文件进行校验是否改变
cd ~/
# 对anaconda-ks.cfg文件计算md5值
md5sum anaconda-ks.cfg
# 计算文件md5值并输出重定向某个文件. 下面有用到
md5sum anaconda-ks.cfg > test.md5
# 批量计算文件的md5值
md5sum install* > test1.md5
# 对比文件是否改变
touch test3
md5sum test3 > test3.md5
# 对test3文件进行修改
echo 123 >> test3
# 使用md5sum进行校验
md5sum -c test3.md5
test3: FAILED
md5sum: WARNING: 1 of 1 computed checksum did NOT match
logstash处理日志,通过判断内外网的访问来源并存储至不同的index中
logstash 配置文件如下参考
input{
filter {
output {
if "10.0.0" in [remote_addr] or "192.168.1" in [remote_addr]{
elasticsearch {
hosts => "10.0.0.2"
index => "logstash-nginx-lan-%{+YYYY.MM.dd}"
else{
index => "logstash-nginx-wan-%{+YYYY.MM.dd}"