1.删除目录下非.sh文件
ls |grep -v *.sh |xargs rm
ll |grep -v *.sh |xargs rm
2.Linux定时器
crontab -e
输入
0 0,3,6,9,12,15,18,21 * * * sh /icms/clear_tmp_log.sh
每个三小时执行一次/icms/clear_tmp_log.sh
3.更改系统日期
1.更改日期+时间:date -s "14:47:00 2021-10-26"
2.只更改日期不更改时间:date -s "2021-10-26 `date +%T`" 或者 date -s "2021-10-26 $(date +%T)"
4.更改文件目录操作
① 更改权限 chmod 777 /tmp 如果是目录可以加-R 递归更改 chmod -R 777 /tmp
② 更改所有者组 chown icms:icmsgrp /tmp 如果是目录可以加-R 递归更改
5.linux去除/r字符
sed -i 's/\r//' ./namelist_uplev.sh
6.查找当前面目录下pass字符,并且输出所在行数
grep -rn "pass" *
7.VI命令
① 查找和替换
/word 向光标向下寻找一个名称为 word 的字符串
?word 向光标向上寻找一个字符串名称为 word 的字符串
n 向下寻找查询结果 N 向上寻找查询结果
1,$s/word1/word2/g 从第一行到最后一行寻找 word1 字符串,并将该字符串替换为word2
1,$s/word1/word2/gc 从第一行到最后一行寻找 word1 字符串,并将该字符串替换为word2 且在替换前显示提示字符给用户确认是否要替换
②删除、复制和粘贴
x, X 在一行字当中,x 为向后删除一个字符 X 为向前删除一个字符
nx n为数字,连续向后删除 n 个字符。例:连续删除 10 个字符 10x
dd 删除游标所在的那一整列
ndd n为数字,删除光标所在的向下 n 列,例如 20dd 则是删除 20列
yy 复制游标所在的那一行
nyy n为数字,复制光标所在的向下 n 列,例如 20yy 则是复制20列
y1G 复制光标所在列到第一列的所有数据
yG 复制光标所在列到最后一列的所有数据
y0 复制光标所在的那个字符到该行行首的所有数据
y$ 复制光标所在的那个字符到该行行尾的所有数据
p,P p 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行!
例,目前光标在第20行,且已经复制了10行数据。则按下p 后,
那10行数据会贴在原本的20行之后,亦即由21行开始贴。
但如果是按下P 那么原本的第20行会被推到变成30行
u 还原上次操作 ctrl+r 恢复上次操作
③保存和离开
:w 将编辑的数据写入硬盘文件
:w! 若文件属性为只读时,强制写入该文件。不过,到底能不能写入, 还是跟你对该文件的权限有关
:q 离开 vi
:q! 若曾修改过档案,又不想储存,强制离开
:wq 储存后离开,若为 :wq! 则为强制储存后离开
ZZ 两个大写ZZ,如果有改动则存储后离开,没有改动则不存储离开
:w [filename] 将编辑的数据储存成另一个档案(类似另存新档)
:r [filename] 在编辑的数据中,读入另一个档案的数据。亦即将 『filename』 这个档案内容加到游标所在行后面
:set nu 显示行号,设定之后,会在每一行的前缀显示该行的行号
:set nonu 与 set nu 相反,为取消行号!
8.压缩、解压缩
压缩:
tar -cvf 打成后的包名 需要打包文件名
解压:
tar -xvf XXXX.tar
-c 创建新的归档
-C 使 tar 命令向由 Directory 变量指定的目录执行 chdir 子例程
-v 打印处理的文件名
-f 文件名
-x 解压缩
-t 查看tar包内容
-z 使用gzip进行压缩 //慎用-z命令,打包测试账务文件后程序下载到本地解压缩失败
① 压缩后删除源文件:--remove-files
例:tar -cvf 123.tar *.csv --remove-files
② 对压缩包中的某个文件解压缩:解压命令后面加入需要解压缩的文件名
例:tar -xvf 123.tar open.csv //这样open.csv就被单独解压缩出来了
③ 打包除了文件外的其他所有文件 --exclude=filename
例:tar -cvf 1234.tar * --exclude=123.tar //打包除了123.tar外的所有文件
④不解压查看tar文件中名称
例:tar -tvf 123.tar
⑤解压缩文件到指定目录
例:tar -xvf 123.tar -C ./ABC
评论 (0)