linux笔记


记录

设置临时英文环境变量

LANG="en_US.UTF-8" git branch 2> /dev/null

linux下gif播放

feh只支持静态文件,可用

animate output.gif

supervisor增加新配置不重启

supervisorctl reread
supervisorctl update

文件操作

zip打包排除文件

zip -r -x=.git/* -x=*.pyc ../release.py *

获取文件压缩后的md5

tar -cf - action_plugins/ group_vars/ | md5sum

ag仅查找目录

https://github.com/ggreer/the_silver_searcher/issues/379

ag -G --file-search-regex *.txt /home/username

替换^M字符

sed -i -e 's/^M//g' file
# or
sed -i -e 's/^M//g' directory/*

注意: 这里的 ^M 要使用 CTRL-V CTRL-M 生成,而不是直接键入 ^M

NET

网络相关的笔记

iptables

iptable修改forword默认策略

iptables -P FORWARD ACCEPT

SSH

git clone时不提示Are you sure you want to continue connecting (yes/no)?

~/.ssh/config

Host github.com
    StrictHostKeyChecking no

Disk

磁盘相关笔记, 包括分区,挂载,磁盘清理修复等

thunar提示"not authorized to perform operation"

之前我一直参考http://blog.chinaunix.net/uid-25906175-id-3030600.html, 通过修改 /usr/share/polkit-1/actions/org.freedesktop.udisks.policyfilesystem-mount-systemauth_admin_keepyes, 但最近(2018-8-2)更新重启后这种方法无法成功

后来参考这里https://wiki.archlinux.org/index.php/Polkit#Authentication_agentshttps://askubuntu.com/questions/487911/thunar-not-authorized-to-acces-mounted-volumes, 通过安装 Authentication_agents 并启动

/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1

数据库

设置mysql的密码小于8字符

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

SET GLOBAL  validate_password_policy='LOW';
  • LOW 政策只测试密码长度。 密码必须至少有8个字符长。

  • MEDIUM 政策的条件 密码必须包含至少1数字字符,1 大写和小写字符,和1特别 (nonalphanumeric)字符。

  • STRONG 政策的情况 密码子字符串长度为4的或更长时间不能匹配 单词在字典文件中,如果一个人被指定。

SET GLOBAL validate_password_length=6;
ALTER USER 'test_user'@'localhost' IDENTIFIED BY 'test_password';

修改postgresql字段长度postgresqllinux

ALTER TABLE  "user" ALTER COLUMN password TYPE character varying(256);

进程

查看进程work目录

https://superuser.com/questions/103309/how-can-i-know-the-absolute-path-of-a-running-process

pwdx $pid

命令

find

参考

find /tmp -name test                    # 查询tmp目录下test文件
find /tmp -name test                    # 查询tmp目录下以test开头的文件
find /etc -name test??                  # 查询tmp目录下以test开头并且文件名为6位字母的文件
find /tmp -user test                    # 查询test用户在tmp目录下创建的文件
find /tmp -size +204800                 # 查询tmp目录下大于100MB的文件
find /tmp -size -20480                  # 查询tmp目录下小于10MB的文件
find /tmp -size +20480 && -size -204800 # 查询tmp目录下大于100MB的文件并且小于10MB的文件
find /tmp -size +20480 -a -size -204800 # 同上
find /tmp -amin -10                     # 查询10分钟之前访问的文件
find /tmp -mmin -10                     # 查询10分钟之内修改的文件
find /tmp -cmin -10                     # 查询10分钟之内属性被修改的文件

awk

  • 显示行号和内容

    zcat test.log | awk '{print NR,$0}'
  • 统计文件列数

    zcat test.log | awk '{print NF}' | sort | uniq -c
  • 筛选列数

    zcat test.log | awk '{ if (NF < 30) {print NR,NF,$0}}'

date

  • 字符串转时间戳

    date -d '06/12/2012 07:21:22' +"%s"
  • 时间戳转字符串

    date -r 1644915240

curl

curl请求指定IP的http域名

curl http://ip:port/test -H 'host:example.com'

curl请求指定IP的https域名

curl https://example.com/test --resolve 'example.com:443:ip'

curl请求搭配grep查询

curl http://192.168.60.32:9200/_cat/indices?v 2>&1 | grep updns

curl请求form

curl -d "param1=value1&param2=value2" -X POST http://localhost:3000/data

或者

curl -d "param1=value1&param2=value2" -H "Content-Type: application/x-www-form-urlencoded" -X POST http://localhost:3000/data

wget

  • 下载目录

    wget -r -np -nH http://127.0.0.0.1:8000/test-dir
作者: honmaple
链接: https://honmaple.me/articles/2017/12/linux笔记.html
版权: CC BY-NC-SA 4.0 知识共享署名-非商业性使用-相同方式共享4.0国际许可协议
wechat
alipay

加载评论