linux shell常用命令总结
1.uname -a 查看服务器位数
2.ifconfig linux 查看ip windows下 是ipconfig
3.ps -aux 中STAT的含义
D 不可中断 Uninterruptible(usually IO)
R 正在运行,或在队列中的进程
S 处于休眠状态
T 停止或被追踪
Z 僵尸进程
W 进入内存交换(从内核2.6开始无效)
X 死掉的进程
S+说明程序在后台运行,位于后台的进程组
4.shell wget php fopen
5.
sar -u 2 10 -- 即每隔2秒检察一次,共执行20次。
du -h --max-depth=1
du -sh /root 只显示目录大小总和
6.改变目录权限 chown auto_analtmp_user:auto_analtmp_user ./project
7.rz sz 命令上传下载文件 freebsd 是lrz lsz
8./usr/local/sbin/proftpd 不同类型ftp重启不一样
9.vipw 更改ftp账号目录,freebsd不能用这个方法
10.sort
sort |uniq -c | sort -nr|head -20
gzip 1.txt 压缩文件
gzip -c filename >filename.gz
gunzip 1.gz 解压文
gunzip –c filename.gz > filename
tar 可以把很多文件和目录打包
tar -czf all.tar.gz *.jpg
tar -zcf games.tgz /deal/getAndroidInfo/resultDir/games 将目录压缩打包
tar -xzf games.tgz
11.四则运算
index=`expr ${index} + 1`
sinaAllPV=$(($sinaAllPV+$DPV))
12.获取本地ip
LOCAL_IP=`ifconfig | awk '/inet/{print $2;exit}'`
13.
find
find ./ -type f | xargs ls |wc -l 不会出现 bash: /bin/ls: Argument list too long
find ./ -name "*" | xargs cat | awk -F'\t' '{if($3~/^http:\/\/live.video.sina.com.cn\/room\/nba/){print substr($1,1,10)}}' | sort | uniq -c
find ./auto_newshome/ -name "clickstream.20120212*" -type f |xargs mv --target-directory=/data4/etl_tmp_bak/${domainName};
删除历史文件:find ${workDir}/* -mtime +15 -type f -exec rm -rf {} \;
find /download/logs/ -name "*.gz" -mtime +15 -type f -exec rm -rf {} \;
find /usr/local/website/ky_transfer_hotsearch_word/files/statistic/ -name "*.txt" -mtime +15 -type f -exec mv {} /download/bak/jiangfeng_result/ \;
14.ftp 账号要注意跟文件的权限问题
15.cat -A 能看到文件全部
16.dos2unix 1.txt 将文件转化成unix格式
vi 看到文件里的^M,可以用tr -d "\015"
17.符号链接ln
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
-f 建立时,将同档案名删除.
ln -s abc cde 建立abc 的软连接
ln abc cde 建立abc的硬连接
18.while do
while [ ${PSNUM} -gt 6 ]
do
sleep 10
PSNUM=`ps axuw|grep sort_singer_uvuip.sh | grep -v "grep" | wc -l`
done
19.:%s/old/new/g vi 替换命令
20.lp 是打印的意思
21.shell 选项传参示例
while getopts :UCDPAh:u:p:r:l:b:t:f: OPTION
do
case ${OPTION} in
h)
REMOTE_IP=${OPTARG}
;;
u)
USER=${OPTARG}
;;
p)
PSWD=${OPTARG}
;;
r)
REMOTE_DIR=${OPTARG}
;;
l)
LOCAL_DIR=${OPTARG}
;;
b)
BACKUP_DIR=${OPTARG}
;;
t)
FILE_TYPE=${OPTARG}
;;
f)
FILE_LIST=${OPTARG}
;;
U)
METHOD="upload"
;;
D)
METHOD="download"
;;
P)
CONN_MODE="passive on"
;;
A)
TRAN_MODE="ascii"
;;
C)
CLEAN="true"
;;
\?)#show usage
error "${PS_FULLNAME} -[U(pload) D(ownload)] -[C(lean)] -[P(assive)] -[A(scii)] -[h host] -[u user] -[p password] -[r remote path] -[l local path] -[b backup path] -[t filetype] -[f file list]."
;;
esac
done
22.grep -v 是匹配不包含的所有行,-i不区分大小写搜索。
23.shell export 是变量输出,可以在子进程中使用该变量,既系统变量,export a=1,declare声明变量数据类型,例如declare