linux命令随记

周末的下午,坐在公司里,完成了手头的工作。感受着海南秋季的惬意,本着不能浪费这份美好的初衷,整理几个常用命令的详细意义。知其然,且知其所以然。

ps -ef |grep renren-security

[root@localhost soft]# ps -ef|grep renren-security
root      7934     1  0 11月03 ?      00:05:46 java -jar renren-security.jar

命令含义:
ps:将某个进程显示出来
-e  显示所有进程
-f  显示UID,PPIP,C与STIME栏位。

grep命令是查找

中间的|是管道命令
用法: command 1 | command 2 他的功能是把第一个命令command 1执行的结果作为command 2的输入传给command 2

这条命令的意思是显示有关renren-security有关的进程

结果字段含义:
UID PID PPID C STIME TTY TIME CMD
root 7934 1 0 11月03 ? 00:05:46 java -jar renren-security.jar

UID 程序被该 UID 所拥有
PID 就是这个程序的 ID
PPID 则是其上级父程序的ID
C CPU 使用的资源百分比
STIME 系统启动时间
TTY 登入者的终端机位置
TIME 使用掉的 CPU 时间。
CMD 所下达的指令为何


find / -name httpd.conf

在find后面写上 -name,表明要求系统按照文件名查找,最后写上httpd.conf这个目标文件名即可。稍等一会系统会在计算机屏幕上显示出查找结果列表:

/etc/httpd/conf/httpd.conf
/usr/lib/tmpfiles.d/httpd.conf

打包压缩相关命令
gzip:
bzip2:
tar: 打包压缩

 -c              归档文件
 -x              压缩文件
 -z              gzip压缩文件
 -j              bzip2压缩文件
 -v              显示压缩或解压缩过程 v(view)
 -f              使用档名

tar -cvf /home/abc.tar /home/abc 只打包,不压缩
tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip压缩
tar -jcvf /home/abc.tar.bz2 /home/abc 打包,并用bzip2压缩

当然,如果想解压缩,就直接替换上面的命令 中的“c” 换成“x” 就可以了。


scp [参数] [原路径] [目标路径]

从本地服务器复制到远程服务器:

scp local_file remote_username@remote_ip:remote_folder  

**从远程服务器复制到本地服务器: **

scp remote_username@remote_ip:remote_folder local_file  

从远程复制到本地的scp命令与上面的命令雷同,只要将从本地复制到远程的命令后面2个参数互换顺序就行了。


curl请求测试接口

get请求

curl “http://www.baidu.com” 如果这里的URL指向的是一个文件或者一幅图都可以直接下载到本地
curl -i “http://www.baidu.com” 显示全部信息
curl -l “http://www.baidu.com” 只显示头部信息
curl -v “http://www.baidu.com” 显示get请求全过程解析

post请求

curl -d “param1=value1&param2=value2” “http://www.baidu.com”

json格式的post请求
curl -l -H “Content-type: application/json” -X POST -d ‘{“phone”:“13512345678”,“password”:“test”}’ http://domain/apis/users.json


grep查看服务器日志

grep -C10 ‘2019-12-11 17:40’ console-2019-12-11.out
在这里插入图片描述

-a:         --text 不忽略二进制的数据
-A<N>:      --after-context=<N> 除了显示匹配到的行外, 还会显示该行后面的<N>行
-b:         --byte-offset 在显示该行内容前 会列出该列第一个字符在文件中的字符偏移量
-B <N>:     --before-context=<N> 显示匹配到的行, 还会显示该行前面 <N>行的内容
-c:         --count     统计符合匹配的行数
-C<N>:      --context=<N>   除了显示匹配行外, 会显示该行前后各<N> 行的内容
-d<动作>    指定查找的是目录而非问阿金时, 必须使用该参数, 否则 grep 会停止动作
-e<范本>:   指定需要作为查找文件内容的范本.
-E          --extended-regexp 将范本作为扩展表示方法来使用, 等同于使用 egrep
-f <范本>:    指定范本文件, 其内容包含一个或多个范本, 让grep 查找符合条件的内容
-F:         --fixed-regexp  将范本规则视为固定字符串的列表
-G:         将范本视为普通的表示方法来使用
-h:         显示符合范本样式的一列前, 不标该列所属的文件名称
-H:         显示符合范本 一列之前, 标识该列所属文件名称
-i:         忽略大小写
-l:         列出内容符合指定范本的文件名
-L:         累出文件内容不符合指定的样式的文件名称
-n:         显示符合样式的一行之前, 标出该行的 行号
-q:         不显示任何信息
-r:         此参数的效果和 -d resurce 相同
-s:         不显示错误信息
-v:         显示不包含匹配文件的所有行
-V:         显示版本信息
-w:         只显示全符合的列
-x:         l只显示全列的符合的列
y:          该参数与 -i 相同

开机自启

vim /etc/rc.local
#!/bin/bash


# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

#新建启动对象
/project/init-start.sh


定时任务-cron
cron服务是Linux的内置服务,但它不会开机自动启动,可以每分钟执行任务。可以用以下命令启动和停止服务:

/bin/systemctl start crond
/bin/systemctl stop crond
/bin/systemctl restart crond
/bin/systemctl reload crond
/bin/systemctl status crond

crontab操作

crontab -u //设定某个用户的cron服务
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除某个用户的cron服务
crontab -e //编辑某个用户的cron服务
crontab -i //打印提示,输入yes等确认信息
# 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 executed
定时任务的每段为:分,时,日,月,周,用户,命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

*:表示任意时间都,实际上就是“每”的意思。可以代表00-23小时或者00-12每月或者00-59分
-:表示区间,是一个范围,00 17-19 * * * cmd,就是每天17,18,19点的整点执行命令
,:是分割时段,30 3,19,21 * * * cmd,就是每天凌晨3和晚上19,21点的半点时刻执行命令
/n:表示分割,可以看成除法,*/5 * * * * cmd,每隔五分钟执行一次
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值