标签:shell
光标移动指令
? 对应方向键移动
h 左移一字符 k 上移一行 j 下移一行 l 右移一字符
? 按行单位移动
0 移到行首 $ 移到行尾
nG 移到第n行 G 移到最后一行
? 按页单位移动
^ f 下卷一屏 ^ b 上卷一屏
^ d 下卷半屏 ^ u 上卷半屏
--将日志文件catlina.out中最后100行数据 取出
tail -100 catlina.out >> 20141214log.txt
--检测是否有用
head -10 20141214log.txt
--在hwcsp6文件夹下,将文件hwcsp6打包复制为hwcsp6_201500807.tar
tar -cvzf hwcsp6_201500807.tar hwcsp6
tar -xvzf hwcsp6_201500807.tar
--从linux到ftp
ftp 地址
cd 所要保存的地址
bin --切换到2进制
put
--从ftp到linux
ftp 地址
cd 文件所在的地址
bin --切换到2进制
get 当前文件夹下
--查看当前文件夹下各个文件的大小
linux:du -sh *
aix:du -sg *
--查看盘符使用情况
df -h G为单位
df -m M为单位
文档权限命令
--可执行权限,即 x 权限
chmod +x script.sh
--改变文件群组权限 要切换到当前文件权限的用户下
chgrp(change group 缩写) -R (该参数表示,被改文件夹下的所有文件和文件夹群组同时被改)group file
--改变文件用户权限
chown(change owner 缩写) -R (该参数表示,被改文件夹下的所有文件和文件夹群组同时被改)owner file
--也可以使用chown改变用户和群组的权限
chown -R user:grop file 更改文件的用户和群组的权限
tar -cvf csp_20151008_bak.tar csp
--将文件夹从本地传入到linux
先压缩成zip格式,放在ftp上,通过get得到zip文件
再使用unzip -o解压
unzip -o csp.zip
--cp命令
cp [参数] 当前文件 需要复制的文件
r:用于复制文件夹
P:连同原文件属性一起复制过去,不是默认复制
i:若被复制文件已经存在时,在覆盖时会先问是否需要继续复制
mv
rm
--tar
打包某个文件夹下所有文件(不包括该文件夹目录)
1、先进入这个文件夹
2、在这个文件夹下执行:tar -czvf filename.tar.gz *
3、cd到需要解压的文件夹下执行:tar -xzvf filename.tar.gz
cd
ps -ef | grep java
---------------------------
磁盘空间清理
磁盘空间清理(理想化保持75%)
1.10.70.211.68 etl/nIj2Sy5,
一般清理WORK01和WORK02
1.WORK01:zjjavg09/work01/vgopbk/vgopbass/data/bass/mode
2.WORK02: zjjavg09/work02/vgopbk/vgopzj/bossop
2.10.70.211.76 etl/Sp7%ox(j
一般清理WORK01和WORK02,清理原则
例如:WORK01:zjjavg03/work01/vgopbk/vgopckm/all_content/read
空间多的可以酌情清理。
例如:WORK02:zjjavg03/work02/vgopbk/vgopwap/data/data_bak 都可以清理
--查看当前文件夹下各个文件的大小
linux:du -sh *
aix:du -sg *
--查看盘符使用情况
df -h G为单位
df -m M为单位
数据库表空间清理步骤:
删除分区的原则是:
日保留2+1月数据
特殊:阅读保留3+1月,TB_DW_WAP_CLIENT_DAY保留最近一星期
月保留6+1月数据
TB_DW_ORDER_INFO_BASS_579_D
TB_DW_ORDER_INFO_ONE_579_D
这类表可以保留少一点的数据,最少10天
第一步:查出空间利用率
SELECT TABLESPACE_NAME "表空间",
To_char(Round(BYTES / 1024, 2), ‘99990.00‘)
|| ‘G‘ "实有",
To_char(Round(FREE / 1024, 2), ‘99990.00‘)
|| ‘G‘ "现有",
To_char(Round(( BYTES - FREE ) / 1024, 2), ‘99990.00‘)
|| ‘G‘ "使用",
To_char(Round(10000 * USED / BYTES) / 100, ‘99990.00‘)
|| ‘%‘ "比例"
FROM (SELECT A.TABLESPACE_NAME TABLESPACE_NAME,
Floor(A.BYTES / ( 1024 * 1024 )) BYTES,
Floor(B.FREE / ( 1024 * 1024 )) FREE,
Floor(( A.BYTES - B.FREE ) / ( 1024 * 1024 )) USED
FROM (SELECT TABLESPACE_NAME TABLESPACE_NAME,
Sum(BYTES) BYTES
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME) A,
(SELECT TABLESPACE_NAME TABLESPACE_NAME,
Sum(BYTES) FREE
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) B
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME)
/*WHERE TABLESPACE_NAME LIKE ‘UNDO%‘ --这一句用于指定表空间名称*/
ORDER BY Floor(10000 * USED / BYTES) DESC;
第二步:找出占用空间的大表
select * from (select t.segment_name, sum(t.bytes) / 1024 / 1024/ 1024 as tab_size
from user_segments t
group by t.segment_name
)
where tab_size>=50
order by tab_size desc ;
第三步:删除分区
----------------------------------------------------------
select ‘alter table ‘ || t.segment_name || ‘ drop partition ‘ ||
t.partition_name || ‘;‘
from user_segments t
where t.segment_name = upper(‘TB_MK_RING_DAY_JF‘);
--附加语句,重要!!!
select distinct t.segment_name,
‘alter table ‘ || t.segment_name || ‘ drop partition ‘ ||
substr(t.partition_name, 1, 13) || ‘;‘,
t1.tab_size,
substr(t.partition_name, 6, 14)
from user_segments t,
(select segment_name, tab_size
from (select t.segment_name,
sum(t.bytes) / 1024 / 1024 / 1024 as tab_size
from user_segments t
group by t.segment_name)
where tab_size >= 50
order by tab_size desc) t1
where t.segment_name = t1.segment_name
and t.partition_name LIKE ‘%PART_201602%‘
and t.partition_name <> ‘PART_201602‘
-- and to_number(substr(t.partition_name, 6, 14))<‘20160206‘
and substr(t.partition_name, 6, 14)<‘20160211‘
and t.segment_name like ‘TB_%‘
--and t.partition_name = ‘PART_201508‘
-- group by substr(t.partition_name, 1, 13)
order by t1.tab_size desc
本文出自 “司马囧” 博客,谢绝转载!
标签:shell
原文地址:http://9274590.blog.51cto.com/9264590/1775436