linux命令汇总

查杀僵尸进程的父ID
 ps -ef | grep defunct | more
 ps -A -o stat,ppid,pid,cmd |grep -e "^[Zz]"|awk ‘{print $2}‘|xargs kill -9

 


 

按端口杀进程

kill -9 `netstat -nlp | grep :3366 | awk '{print $7}' | awk -F"/" '{ print $1 }'`

 

 


 

按进程名

ps -ef|grep smkernel-boot|awk -F ' ' '{print $2}'|xargs kill -9

 


在指定目录中查找用户root的文件

find /home/gsmc -user root -exec ls -l {} \;

 

 


#浏览当前目录中文件的绝对路径

ls | sed "s:^:`pwd`/: "   #浏览当前目录中文件的绝对路径

ls | sed "s:^:`pwd`/: "|xargs file  #查看文件的类型

 

 


 

find ./  -type f  | sed "s:^:`pwd`/:" | sed "s:\./::" |xargs file   #查找文件中所有文件类型

find ./  -type f  | sed "s:^:`pwd`/:" | sed "s:\./::" |xargs file|grep ELF   #当前目录下文件类型为二进制文件

find ./  -type f  | sed "s:^:`pwd`/:" | sed "s:\./::" |xargs file|grep ELF   #当前目录下文件类型为二进制文件 


 

 

如果crontab日志提示有类似报错MAIL (mailed 70 bytes of output but got status 0x007f#012)

大多为任务的格式不合法,或权限问题(包括相关文件的权限)

 


取日期时间

 

 

DATE=`date +%F | sed 's/-//g'``date +%T | sed 's/://g'`

echo $DATE

 


 

全部数据库备份

mysqldump -uroot -p --all-databases > all_$DATE.sql  #备份所有数据库

#mysqldump -uroot -p --all-databases < all_$DATE.sql

 

 

 


 

远程访问SYBASE导出表数据 
export DISPLAY=:0

dbisql -c "dbf=/<path>/database/db.db;uid=XX;pwd=XX" -host 0.0.0.0 -port 2638 -nogui "select * from table1; output to /oprinfor.txt format ASCII;\commit;"


 

linux卸载分区,停止正在使用的分区下文件的进程

fuser -m -k /dev/sda5 #停止
fuser -m -v /dev/sda5 #查看
umount /dev/sda5 #卸载
#mkfs.ext3 /dev/sda5 #格式化

 

排除目录

ls |grep -v home|grep -v run|grep -v tmp|grep -v sbin|grep -v iso|grep -v mnt|xargs cp -rfv {} /tmp \;

 

 

 


basename /路径/文件 #返回文件名
dirname /路径/文件 #返回路径 
touch {a..b}{1..2} #快捷创建文件a1 a2 b1 b2

 

/usr/bin/bash #shell bang
/usr/bin/env bash #shell bang
./sh.sh #子shell执行[常规]
(sh sh.sh) #子shell执行
. sh.sh #当前shell
source sh.sh # 当前shell
rpm -qc bash #查看shell 的配置文件
usermod #修改用户信息

 

 

 

su user1 #nologin shell

 

su - user1 #login shell

 

type -a #查看是否为shell 内部命令
echo -e "\e[1;31m ssss \e[0m" #命令行改变颜色,\e=\033,前景3开头 ,背景4开头
alias #查看已定义别名

unalias vi #取消别名定义

cp aa bb #使用别名

\cp file1 file2 #加\代表跳过cp别名

 

python在shell脚本里运行 

#!/usr/bin/env bash
echo "shell 里使用python"
python <<-EOF
print "python in shell script"
EOF
echo "end"

 


 

 

 

 

查看UUID

 

lsblk|grep part|cut -d '/' -f 5 |grep -v part
 
将原有UUID写会到分区
tune2fs -U c1b9d5a2-f162-11cf-9ece-0020afc76f16 /dev/sdc1

查看存储UUID 

ls -l /dev/disk/by-uuid/

用UUID挂载U盘(UUID在多台电脑上是不变的)/dev/sdX是会变化

mount UUID=xxx /mnt/usb1

 

 


 

 

 

 

查看已挂载的文件系统类型

 

df -T
查看未挂载的文件系统类型
lsblk -f /dev/sd*
 
产看文件系统的超级块信息
tune2fs -l /dev/sd*

 

 


 

 

 

 

tcp_Wrappers防火墙 该服务支持tcp_Wrappers防火墙

 

即该服务应用了libwrapped库文件
查看某服务(如ssh)是否应用了libwrapped库文件的方法是:
# ldd /usr/sbin/sshd |grep libwrap.so.0

 


>aa.txt #新建文件aa.txt

 

 

 

shell里的与或非

 

-a -o !

 


sh ip.sh
kill -9 `ps -ef |grep ip.sh|grep -v grep|cut -d " " -f 6` #杀除ip.sh脚本进程

 

 

 


 

执行远程服务器上命令

ssh root@xxx.xxx.xxx.xxx 'ls -l /'

带参数本地脚本

ssh root@xxx.xxx.xxx.xxx 'bash -s' < test.sh helloworld
执行远程服务器上的脚本
ssh root@xxx.xxx.xxx.xxx "/home/nick/test.sh"
执行远程服务器上带参数的脚本
指定密码远程执行命令
sshpass -p hnzr ssh root@192.168.1.X "ls /"
sshpass -p 密码 ssh 用户@192.168.1.X "whereis ftp|grep 'ftp'|cut -c1-3 "

 


su -c与sudo  

su -c "ls" 按root执行命令 一次执行,需用root密码
sudo 一次执行需用编辑配置,且能多次执行(普通用户密码)
su - root 权限太大(root密码)

 

visudo回车即可进入/etc/sudoers
root ALL=(ALL) ALL
在这个下面添加如下即可
user1 ALL=(ALL) ALL
-----------------------------

 

 


笔记本电脑触摸板(鼠标)

synclient -l #查看当前触摸板设置
synclient TapButton1=1 #一个手指点击触摸板,表示左键单击 (TapButton1 表示一个手指点击,等于号后面的“1”表示左键,“2”表示中键,“3“表示右键。2,3也有不一样的,以实际为准)
synclient TapButton2=3 #两个手指点触摸板,表示右键单击
synclient touchpadoff=1 #关闭触摸板
synclient VertTwoFingerScroll=1 #表示双指垂直滚动,意思就是两个手指向下划,滚动页面。

 

 


 

挂载nfs

 

 

 

mkdir /mnt/nfs

 

mount -o v3 xxx.xxx.xxx.xxx:/path/dir /mnt/nfs
cd /mnt/nfs

 


 

 

 

 

sed p sshd_config -n #查看文件

 

sed -n '/search/{p;}' sshd_config #查看符合条件行
sed -n '/PermitTT/{s/no/yes/;p}' sshd_config# 修改符合条件的行

 


 find / -type d -maxdepth 1

查看一层深度下类型为目录的文件
 
find / -path '/root' -o -path '/boot' -prune -o -print -maxdepth 1 -exec ls -l {} \;
排除两个目录 并执行命令
 
按目录查找   
 
在当前目录除aa之外的子目录内搜索 txt文件   
$ find . -path "./aa" -prune -o -name "*.txt" -print   
 
在当前目录及除aa和bb之外的子目录中查找txt文件   
$ find . \( -path "./aa" -o -path "./bb" \) -prune -o -name "*.txt" -print   
 
在当前目录,不再子目录中,查找txt文件
$ find . ! -name "." -type d -prune -o -type f -name "*.txt" -print

 

 


 

 
yum只下载软件不安装
 sudo yum install tigervnc-server --downloadonly --downloaddir=/tmp tigervnc-server

python -m SimpleHTTPServer 8002 可以提供文件服务器

 

 centos7查看开机启动哪些服务:
systemctl list-unit-files

 

posted on 2019-05-06 13:26  pvm  阅读(416)  评论(0编辑  收藏  举报

导航