linux常用的命令集合

find

查找最近10分钟内修改的文件

find . -mmin -10

查找10分钟以前修改的文件

find . -mmin +10

查找当前目录下面大于5M的文件:

find . -size +5M

查找当前目录下面大于0.5M的文件:

find . -size +512k

文件压缩 tar

抽取tar压缩包中的某一个文件

tar zxvf XXXXX.tar.gz YYYYY/ZZZ.txt

其中XXXXX.tar.gz为你的压缩文件的名字,YYYYY/ZZZ.txt为你要抽取的文件位于压缩包中的路径。

列出压缩包中包含的所有文件的列表

tar ztvf XXXXX.tar.gz

文件分包压缩/合并

拆分单个很大的文件

split -b1024m "file.tar.gz" "file.tar.gz.part-"
# Creates files: file.tar.gz.part-aa, file.tar.gz.part-ab, file.tar.gz.part-ac, ...

用tar压缩文件时,按照特定的大小进行分包

# create archives 
$ tar cz my_large_file_1 my_large_file_2 | split -b1024m - myfiles_split.tgz_
# uncompress $ cat myfiles_split.tgz_* | tar xz

用gzip压缩单个大的文件时,按照特定的大小进行分包

# create archives
$ gzip -c my_large_file | split -b1024m - myfile_split.gz_
# uncompress
$ cat myfile_split.gz_* | gunzip -c > my_large_file

关于杀掉进程:

抄袭自:http://www.ttlsa.com/linux-command/4-method-to-kill-user-all-process/

1. pkill方式
# pkill -u ttlsa

2. killall方式
# killall -u ttlsa

3. ps方式
ps列出ttlsa的pid,然后依次kill掉,比较繁琐.
# ps -ef | grep ttlsa | awk '{ print $2 }' | sudo xargs kill -9

4. pgrep方式
pgrep -u参数查出用户的所有pid,然后依次kill
# pgrep -u ttlsa | sudo xargs kill -9

查看外网IP

➜  ~ curl ifconfig.me
179.214.180.100
➜  ~ wget -qO- ifconfig.me/ip
179.214.180.100

SCP获取远程服务器上的文件

从服务器下载整个目录

 scp -r username@servername:remote_dir/ /tmp/local_dir 

例如:

scp -r codinglog@192.168.0.101 /home/kimi/test  /tmp/local_dir

抄袭自:http://www.cnblogs.com/no7dw/archive/2012/07/07/2580307.html

文本处理

tac将文件从最后一行开始输出。

tac yourfilename

linux下查看当前网络流量

查看/proc/net/dev

user_00@xxxx64:~> cat /proc/net/dev
Inter- | Receive | Transmit
face | bytes packets errs drop fifo frame compressed multicast | bytes packets errs drop fifo colls carrier compressed
eth0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
eth1: 67437819880 552776948 0 0 0 0 0 6 63179118041 486899714 0 0 0 0 0 0
lo: 2338316682 34154992 0 0 0 0 0 0 2338316682 34154992 0 0 0 0 0 0
tunl0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
sit0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ip6tnl0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

最左边的表示接口的名字,Receive表示收包,Transmit表示收包;
bytes表示收发的字节数;
packets表示收发正确的包量;
errs表示收发错误的包量;
drop表示收发丢弃的包量;

查看局域网内所有主机的IP地址

nmap -sP 192.168.1.0/24
查看内网IP 192.168.1.0~ 192.168.1.255 之间存活的主机

crontab 语法

语法为:

1 2 3 4 5 /path/to/command arg1 arg2
或者
1 2 3 4 5 /root/ntp_sync.sh
其中:

第1个字段:分钟 (0-59)
第2个字段:小时 (0-23)
第3个字段:日期 (0-31)
第4个字段:月份 (0-12 [12 代表 December])
第5个字段:一周当中的某天 (0-7 [70 代表星期天])
/path/to/command - 计划执行的脚本或命令的名称

* * * * * 要执行的命令
----------------
| | | | |
| | | | ---- 周当中的某天 (0 - 7) (周日为 0 或 7)
| | | ------ 月份 (1 - 12)
| | -------- 一月当中的某天 (1 - 31)
| ---------- 小时 (0 - 23)
------------ 分钟 (0 - 59)

### 每隔 5 分钟运行一次 backupscript 脚本 ##
*/5 * * * * /root/backupscript.sh
### 每天的凌晨 1 点运行 backupscript 脚本 ##
0 1 * * * /root/backupscript.sh
### 每月的第一个凌晨 3:15 运行 backupscript 脚本 ##
15 3 1 * * /root/backupscript.sh

列出你所有的定时任务
# crontab -l
# crontab -u username -l

### 删除所有的定时任务
crontab -r

### 删除某用户名下的定时任务,此命令需以 root 用户身份执行
crontab -r -u username

如果想将输出内容发送到特定的邮件账户中,比如说 vivek@nixcraft.in 这个邮箱, 则你需要像下面这样定义一个 MAILTO 变量:
MAILTO="vivek@nixcraft.in"
0 3 * * * /root/backup.sh >/dev/null 2>&1

典型的 /etc/crontab 文件内容是这样的:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值