Linux常用脚本

#截取日志
sed -n '/开始时间/,/结束时间/' 被截取日志原文件名称>截取后存储日志文件名称

tail -f -n200 $logPath

#防火墙  sudo!!
vim /etc/sysconfig/iptables 
/etc/init.d/iptables restart 
#用于查看指定的端口号的进程情况
netstat -atupnl |grep 端口号,

firewall
firewall-cmd --list-all 
firewall-cmd --zone= public --remove-port=22/tcp --permanent
firewall-cmd --zone=public --add-port=2370/tcp --permanent
firewall-cmd --reload

iptables -A PREROUTING -p tcp -m tcp –dport80 -j DNAT –to-destination 127.0.0.1:8080 //将来自80端口的请求转发到8080端口
#解压
1、*.tar 用 tar –xvf 解压
2、*.gz 用 gzip -d或者gunzip 解压
3、*.tar.gz和*.tgz 用 tar –xzf 解压
4、*.bz2 用 bzip2 -d或者用bunzip2 解压
5、*.tar.bz2用tar –xjf 解压
6、*.Z 用 uncompress 解压
7、*.tar.Z 用tar –xZf 解压
8、*.rar 用 unrar e解压
9、*.zip 用 unzip 解压 -o 直接覆盖 -d directoryName 

10  jar xvf cmd.war
#压缩
tar -zcvf examples.tgz examples (examples当前执行路径下的目录)
说明:
-z, --gzip filter the archive through gzip 通过gzip压缩的形式对文件进行归档

zip -r examples.zip examples (examples为目录)

常用任务管理命令

# jobs      //查看任务,返回任务编号n和进程号
# bg  %n   //将编号为n的任务转后台运行
# fg  %n   //将编号为n的任务转前台运行
# ctrl+z    //挂起当前任务
# ctrl+c    //结束当前任务

#挂载网络硬盘(连接win7)
#1)共享文件夹不能设为只读、ip最好不要写名字
yum install samba-client //安装工具
smbclient -L sirliu -U administrator //查看共享资源
mount -t cifs -o user=administrator,password=jiaying,iocharset=utf8,codepage=cp936 //192.168.197.1/share /mnt/share
在/etc/fstab文件中,加入该共享目录的挂载信息
//192.168.1.123/redhat_disk      /mnt/Windows    cifs    username=tommy,password=111111  0 0

#执行.bin文件
chmod +x filename.bin //给予文件执行权限
./filename.bin  //执行

#vim
ctrl+f 下一页 ctrl+b上一页
/text  查找text,按n健查找下一个,按N健查找前一个。
:set ignorecase  忽略大小写的查找
:set noignorecase  不忽略大小写的查找
u 撤销(Undo)
U 撤销对整行的操作
yy 拷贝当前行
p  在当前光标后粘贴,如果之前使用了yy命令来复制一行,那么就在当前行的下一行粘贴。

nohup /root/start.sh &
操作终端时的一个细节不同:他是在当shell中提示了nohup成功后还需要按终端上键盘任意键退回到shell输入命令窗口,然后通过在shell中输入exit来退出终端;而我是每次在nohup执行成功后直接点关闭程序按钮关闭终端.。所以这时候会断掉该命令所对应的session,导致nohup对应的进程被通知需要一起shutdown。

#查看资源
Linux查看系统资源命令
转载于:http://lxbins.blog.51cto.com/1089997/283663
top:

主要参数
d:指定更新的间隔,以秒计算。
q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。
c:显示进程完整的路径与名称。
S:累积模式,会将己完成或消失的子行程的CPU时间累积起来。
s:安全模式。
i:不显示任何闲置(Idle)或无用(Zombie)的行程。
n:显示更新的次数,完成后将会退出to
显示参数:
PID(Process ID):进程标示号。
USER:进程所有者的用户名。
PR:进程的优先级别。
NI:进程的优先级别数值。
VIRT:进程占用的虚拟内存值。
RES:进程占用的物理内存值。
SHR:进程使用的共享内存值。
S:进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。
%CPU:该进程占用的CPU使用率。
%MEM:该进程占用的物理内存和总内存的百分比。
TIME+:该进程启动后占用的总的CPU时间。
Command:进程启动的启动命令名称,如果这一行显示不下,进程会有一个完整的命令行。
top命令使用过程中,还可以使用一些交互的命令来完成其它参数的功能。这些命令是通过快捷键启动的。
<空格>:立刻刷新。
P:根据CPU使用大小进行排序。
T:根据时间、累计时间排序。
q:退出top命令。
m:切换显示内存信息。
t:切换显示进程和CPU状态信息。
c:切换显示命令名称和完整命令行。
M:根据使用内存大小进行排序。
W:将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法。
还有一种办法是 ps -ef | sort -k7 ,将进程按运行时间排序,看哪个进程消耗的cpu时间最多。

free

1.作用
free命令用来显示内存的使用情况,使用权限是所有用户。
2.格式
free [-b-k-m] [-o] [-s delay] [-t] [-V]
3.主要参数
-b -k -m:分别以字节(KB、MB)为单位显示内存使用情况。
-s delay:显示每隔多少秒数来显示一次内存使用情况。
-t:显示内存总和列。
-o:不显示缓冲区调节列。

======================================
系统

# uname -a # 查看内核/操作系统/CPU信息?
# head -n 1 /etc/issue # 查看操作系统版本?
# cat /proc/cpuinfo # 查看CPU信息?
# hostname # 查看计算机名?
# lspci -tv # 列出所有PCI设备?
# lsusb -tv # 列出所有USB设备?
# lsmod # 列出加载的内核模块?
# env # 查看环境变量

资源

# free -m # 查看内存使用量和交换区使用量?
# df -h # 查看各分区使用情况?
# du -sh # 查看指定目录的大小?
# grep MemTotal /proc/meminfo # 查看内存总量?
# grep MemFree /proc/meminfo # 查看空闲内存量?
# uptime # 查看系统运行时间、用户数、负载?
# cat /proc/loadavg # 查看系统负载

磁盘和分区

# mount | column -t # 查看挂接的分区状态?
# fdisk -l # 查看所有分区?
# swapon -s # 查看所有交换分区?
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)?
# dmesg | grep IDE # 查看启动时IDE设备检测状况

#格式化
mfks -t xfs /dev/sda6 ??//将sda6分区格式化为ext3格式
?
网络

# ifconfig # 查看所有网络接口的属性?
# iptables -L # 查看防火墙设置?
# route -n # 查看路由表?
# netstat -lntp # 查看所有监听端口?
# netstat -antp # 查看所有已经建立的连接?
# netstat -s # 查看网络统计信息
?
用户
======================================?
# w # 查看活动用户?
# id # 查看指定用户信息?
# last # 查看用户登录日志?
# cut -d: -f1 /etc/passwd # 查看系统所有用户?
#c # 查看系统所有组?
# crontab -l # 查看当前用户的计划任务
?
服务
======================================?
# chkconfig --list # 列出所有系统服务?
# chkconfig --list | grep on # 列出所有启动的系统服务

代码交流 2021