1.Linux 删除除了某个文件之外的所有文件

[root@localhost abc]# ls |grep -v 'a' |xargs rm -f

其中rm -f  !(a) 最为方便。如果保留a和b,可以运行rm -f !(a|b)来实现。

“-bash: !: event not found ” 可以通过运行shopt -s extgolb来解决。如下:
[root@localhost /]# mkdir abc
[root@localhost /]# cd abc
[root@localhost abc]# touch a b c
[root@localhost abc]# ls
a b c
[root@localhost abc]# rm -f !(a)
-bash: !: event not found
[root@localhost abc]# shopt -s extglob
[root@localhost abc]# rm -f !(a)
[root@localhost abc]# ls
a

2.命令的信息返回在屏幕上,同时保存在文件who.info中

$ who | tee who.info

3.显示当前目录下文件+目录占用空间前10,排序要用k参数,如果用h会带上单位,排序时会有问题,比如 10k 和1M 排序就不对了

SIZE 可以是一个可选的整数,后面跟着以下单位中的一个:
KB 1000,K 1024,MB 1000*1000,M 1024*1024,还有 G、T、P、E、Z、Y。

du –skc *|sort –rn |head -10
pc-csesb01-aiosb% du --help

4.一次创建多层级多个目录

mkdir -p /apps/temp{1,2,3,4}/temp

5.查看当前主机版本,位数

uname -a
cat /proc/version
cat /etc/issue
lsb_release -a

6.重复执行同一命令50次

seq 50|xargs -i cmd

7.Linux 删除指定时间前的文件

-amin n  查找系统中最后N分钟访问的文件
-atime n  查找系统中最后n*24小时访问的文件
-cmin n  查找系统中最后N分钟被改变文件状态的文件
-ctime n  查找系统中最后n*24小时被改变文件状态的文件
-mmin n  查找系统中最后N分钟被改变文件数据的文件
-mtime n  查找系统中最后n*24小时被改变文件数据的文件

显示20分钟前的文件
find /home/prestat/bills/test -type f -mmin +20 -exec ls -l {} \; 删除20分钟前的文件
find /home/prestat/bills/test -type f -mmin +20 -exec rm {} \; 显示20天前的文件
find /home/prestat/bills/test -type f -mtime +20 -exec ls -l {} \; 删除20天前的文件
find /home/prestat/bills/test -type f -mtime +20 -exec rm {} \;

8.将/home/Blinux /html/ 这个目录下所有文件和文件夹打包为当前目录下的html.zip

zip –q –r   html.zip /home/Blinux /html

linux中往zip档里添加文件 newfile

zip -u ttt.zip newfile

9.tar使用

打包不包含.log后缀的 并且更新日期为2013-7-7开始之后的时间的文件,包含7月7的

tar --exclude=*.log -N '2013/07/07' -cvf test3.tar *

追加用“-r"选项,取出用“-x”选项:

如:有一个包 file.tar.bz2 ,需要把file2.txt添加进去,就用命令:
tar -rvf file.tar.bz2 file2.txt
取出file2.txt则用:
tar -xvf file.tar.bz2 file2.txt
tar -xvf file.tar.bz2 ,后面不跟文件名,就会解压整个file.tar.bz2包。

  .tar.gz
  解压:tar -zxvf FileName.tar.gz
  压缩:tar -zcvf FileName.tar.gz DirName

10.alias使用

时间方面 :
% : 印出 %
%n : 下一行
%t : 跳格
%H : 小时(00-23)
%I : 小时(01-12)
%k : 小时(0-23)
%l : 小时(1-12)
%M : 分钟(00-59)
%p : 显示本地 AM 或 PM
%r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)
%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
%S : 秒(00-60)
%T : 直接显示时间 (24 小时制)
%X : 相当于 %H:%M:%S
%Z : 显示时区
日期方面 :
%a : 星期几 (Sun-Sat)
%A : 星期几 (Sunday-Saturday)
%b : 月份 (Jan-Dec)
%B : 月份 (January-December)
%c : 直接显示日期与时间
%d : 日 (01-31)
%D : 直接显示日期 (mm/dd/yy)
%h : 同 %b
%j : 一年中的第几天 (001-366)
%m : 月份 (01-12)
%U : 一年中的第几周 (00-53) (以 Sunday 为一周的第一天的情形)
%w : 一周中的第几天 (0-6)
%W : 一年中的第几周 (00-53) (以 Monday 为一周的第一天的情形)
%x : 直接显示日期 (mm/dd/yy)
%y : 年份的最后两位数字 (00.99)
%Y : 完整年份 (0000-9999)

BSH
alias cdesb='cd /home/was/task-ai/app/opp'
alias cdd='cd $OLDPWD'
alias cdesb='cd /home/was/task-ai/app/opp'
alias cd...="cd \$OLDPWD"

alias sqlplus='rlwrap sqlplus'
  alias rman='rlwrap rman'


CSH , 这里`date +%Y%m%d`表示执行命令,加在拼接一个文件名
alias elog tail -f /home/aiesb1/app/oppf/log/opp_esb-`date +%Y%m%d`.log alias cdr cd $HOME/release
cd... 返回cd的上一个目录

11.cp 命令参数不覆盖

shell>awk 'BEGIN { cmd="cp -i a1 a2"; print "n" |cmd; }'

12.查看文件内某时间段内的部分,用于日志很多,且日志开头会打印时间的场景,使用awk

# cat bbs.ttlsa.com.access.log | awk '$4 >="[21/Jul/2014:14:37:50" && $4 <="[21/Jul/2014:14:38:00"'

13.grep使用

从文件内容查找匹配指定字符串的行:
$ grep "被查找的字符串" 文件名
从文件内容查找与正则表达式匹配的行:
$ grep –e “正则表达式” 文件名
查找时不区分大小写:
$ grep –i "被查找的字符串" 文件名
查找匹配的行数:
$ grep -c "被查找的字符串" 文件名
从文件内容查找不匹配指定字符串的行:
$ grep –v "被查找的字符串" 文件名
从根目录开始查找所有扩展名为.txt的文本文件,并找出包含"phpzixue.cn"的行
find . -type f -name "*.txt" | xargs grep "phpzixue.cn"

14.查找包含start*.sh 不包含 opf  _all 的文件并打印出来

find ./ -name "start*.sh" ! -name "*opf*" ! -name "*_all*" -print

15.取某个行区间的数据

sed -n '138438,239766p' 20141205.log  test1205.log

16.top交互命令

在top 命令执行过程中可以使用的一些交互命令。这些命令都是单字母的,如果在命令行中使用了s 选项, 其中一些命令可能会被屏蔽。
h 显示帮助画面,给出一些简短的命令总结说明
k 终止一个进程。
i 忽略闲置和僵死进程。这是一个开关式命令。
q 退出程序
r 重新安排一个进程的优先级别
S 切换到累计模式
s 改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s
f或者F 从当前显示中添加或者删除项目
o或者O 改变显示项目的顺序
l 切换显示平均负载和启动时间信息
m 切换显示内存信息
t 切换显示进程和CPU状态信息
c 切换显示命令名称和完整命令行
M 根据驻留内存大小进行排序
P 根据CPU使用百分比大小进行排序
T 根据时间/累计时间进行排序
W 将当前设置写入~/.toprc文件中

其他:

Linux crontab 命令格式与详细例子
*  *  *  *  *  command
分 时  日  月  周  命令

JAVA:

Seconds
Minutes
Hours
Day-of-Month
Month
Day-of-Week
Year (可选字段)
'*'字符表示指定字段的所有可能值,比如Day-Of-Week字段的*表示每天。

下面是一些示例:
创建一个每五分钟激活一次的触发器:
java 代码
"0 0/5 * * * ?"

创建一个触发器在当前分钟的第10秒后,每五分钟执行一次,比如上午10:00:10 am,上午10:05:10:
java 代码
"10 0/5 * * * ?"

创建一个触发器,在每个星期三和星期五的10:30, 11:30, 12:30, 和13:30执行。
java 代码
"0 30 10-13 ? * WED,FRI"

创建一个触发器,在每个月的第5天和第20天的上午8点到10点执行,每隔半小时执行一次,注意上午10:00不会执行:
java 代码
"0 0/30 8-9 5,20 * ?"

linux 部分常用命令的更多相关文章

  1. Linux GDB常用命令一栏

    Linux GDB 常用命令如下: 1.启动和退出gdb (1)启动:gdb ***:显示一段版权说明: (*** 表示可执行程序名) (2)退出:quit.有的时候输入quit后会出现相关提示:类似 ...

  2. Linux 下常用命令

    linux 下常用命令: 1.删除文件命令为 rm 2.创建目录的命令是:mkdir 3.删除目录的命令是rmdir(空目录) 4.切换到root帐号:su 5.查看所有进程:ps -aux 6.杀死 ...

  3. linux 服务器常用命令整理

    linux 服务器常用命令整理 目录 网络分析 - tcpdump \ telnet \ (netstat \ ss \ lsof) \ nload 网络传输 - scp \ rsync \ (rz ...

  4. 计算机硬件基本知识及Linux的常用命令

    ------------------1. 计算机硬件基本知识------------------ CPU - 寄存器 - L1/L2/L3 - 内存 - 硬盘 - 互联网下载/其他存储介质传输 寄存器 ...

  5. 一、Linux概述 二、Linux的安装 三、Linux的常用命令(重点)

    一.Linux概述###<1>操作系统 OS,管理和控制 计算机的 硬件和软件资源的 计算机程序. 最基本的系统软件. 是用户和计算机交互的桥梁,是硬件和软件交互的桥梁. 操作系统:she ...

  6. Linux帮助——常用命令

    Linux帮助——常用命令 摘要:本文主要学习了Linux系统中常用的一些命令. uname命令 uname命令可以显示电脑以及操作系统的相关信息. 基本语法 uname [选项] 选项说明 -a:显 ...

  7. Linux虚拟机常用命令

    参考原文链接:(https://blog.csdn.net/fanyun_01/article/details/51083585) 一.Linux虚拟机常用命令 # virsh list //查看已打 ...

  8. [转帖]Linux systemd 常用命令

    Linux systemd 常用命令 https://www.cnblogs.com/tsdxdx/p/7288490.html systemctl hostnamectl timedatectl l ...

  9. Linux系统管理常用命令

    Linux系统管理常用命令 分类: Linux2011-01-10 18:26 1538人阅读 评论(0) 收藏 举报 linuxcommandservicenginxuserunix 目录(?)[+ ...

  10. Linux + NodeJS 常用命令

    Linux系统常用命令 1.su 由当前用户切换至root用户: 2. su username 切换至某一用户: 3.chmod u+w /etc/sudoers 为/etc/sudoers文件添加写 ...

随机推荐

  1. [CSL 的魔法][求排序最少交换次数]

    链接:https://ac.nowcoder.com/acm/contest/551/E来源:牛客网题目描述 有两个长度为 n 的序列,a0,a1,…,an−1a0,a1,…,an−1和 b0,b1, ...

  2. java.io.EOFException ValueOperations.increment()操作后,获取值时有的bug

    ---恢复内容开始--- 今天使用spring-data-redis包操作redis,就是简单的使用redis的计数功能,在redis中的操作命令如:incr key;get key; 这两步操作使用 ...

  3. java_oop_方法1

    方法 方法概念 封闭业务逻辑 提高代码复用定义类的方法    类的方法定义类的某种行为(或功能)    方法返回的数据类型    方法的名称 (方法的参数也叫形参)    {方法的主体}    方法的 ...

  4. Netty学习记录

    一.Netty简介 Netty 是一个基于 JAVA NIO 类库的异步通信框架,它的架构特点是:异步非阻塞.基于事件驱动.高性能.高可靠性和高可定制性. Netty 是一个 NIO client-s ...

  5. (转)解决OSX上面PHP curl SSLRead()

    原创 2016年05月19日 19:39:04 标签: php / curl / osx 830 这个问题的原因是因为OSX curl默认使用 SecureTransport 而不是OpenSSL. ...

  6. mysqlbinlog基于时间点恢复

    基于时间点恢复 /data/mysq/mysqlbin.000026 #mysqlbinlog文件,恢复如下内容: 注意:按照时间点恢复时,可能同一个时间点有其他的操作,要结合上下文的时间选取~ # ...

  7. SpringBoot配置(1) 配置文件application&yml

    SpringBoot配置(1) 配置文件application&yml 一.配置文件 1.1 配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的. application ...

  8. SWD通讯

    这几日看到坛里有几个关于SWD协议相关的文章,自己也尝试了下,有点体会,也有些疑惑,写出来与大家分享和交流下.    以下我的模拟SWD接口的板子简称为Host,目标MCU(即我要连接的板子)简称为T ...

  9. 当通过Nuget包管理器获取还原组时,出现 提示 “xxxxx”已拥有为“xxxxx”定义的依赖项

    当通过Nuget包管理器获取还原组件时,出现  提示 “xxxxx”已拥有为“xxxxx”定义的依赖项 时 解决方法: 工具---扩展和更新,把Nuget包管理器卸载后,重启VS,再安装,现打开VS项 ...

  10. 导出Excel(Ext 前台部分)

    开发思路: - 序列化当前GridPanel 数据, 表头结构(用于对应关系), 通过控制器Aspose写到Excel中, 然后返回临时文件地址, 弹出窗口下载. function btnExport ...