Linux 常用命令记录--2016年7月14日

18. sort -n fileName 排序 fileName 中的数值
    sort -M fileName 排血 fileName 中的月数 
19. sort 排序某个文件的例子
    参数解析:-k 和-t 对按照字段分割的数据进行排序时非常有用,例如 /etc/passwd 文件,  -t 指定字段分隔符, -k 指定排序的字段,例如要对密码文件 根据用户ID 进行排序
sort -t ':' -k 3 n /etc/passwd
[bpm@RHEL72A ~]$ sort -t ':' -k 3 -n /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin


[bpm@RHEL72A ~]$ du -sh * | sort -nr  //-r 参数为降序排序
0       Videos
0       Templates
0       Public
0       Pictures
0       Music
0       Downloads
0       Documents
0       Desktop
20. 搜索命令
[root@RHEL72A mike]# grep mike mike.htm // 输出匹配模式的行,若加 -n 会显示对应的行号
mike
[root@RHEL72A mike]# grep -v mike mike.htm // 反向搜索,输出不匹配改模式的行
lancy
yang
[root@RHEL72A mike]# grep -nv mike mike.htm // 加上-n 参数显示行号
2:lancy
3:yang


mike.htm 的内容为, 则如下
mike
mike
mike
lancy
yang
~


[root@RHEL72A mike]# grep -c mike mike.htm // 显示多少匹配的内容
3




[root@RHEL72A mike]# grep -e lancy -e yang mike.htm //-e 参数显示 内容为 lancy 和 yang 的内容,多层匹配
lancy
yang
[root@RHEL72A mike]# grep [yanglancy] mike.htm //正则表达式, 只要匹配 yanglancy 中的任意一个内容,即可显示,如下,
lancy
yang
[root@RHEL72A mike]# grep [yanglancy] mike.htm //只要匹配 yanglancy 中的任意一个内容,即可显示,如下,glan
glan
lancy
yang


21. 压缩工具 bzip2 
[root@RHEL72A mike]# bzip2 mike.htm // 压缩文件
[root@RHEL72A mike]# ls -l mike* // 显示压缩后的文件
-rw-r--r--. 1 root root    0 Jul 13 02:28 mike_back.log
lrwxrwxrwx. 1 root root   13 Jul 13 02:26 mikeback.log -> mike_back.log
-rw-r--r--. 1 root root   57 Jul 13 22:13 mike.htm.bz2
[root@RHEL72A mike]# bzcat mike.htm.bz2 // 在压缩状态下,查看文件内容
mike
glan
mike
mike
lancy
yang
[root@RHEL72A mike]# bunzip2 mike.htm.bz2 // 解压缩文件
 压缩工具 gzip 
 gzip 是linux 上最流行的压缩工具了,
 gzip : 用了压缩文件
 gzcat : 显示压缩过文件的内容
 gunzip: 用来解压文件
 
zip -r 递归压缩,


[root@RHEL72A mike]# zip -r test1zip test1
  adding: test1/ (stored 0%)
  adding: test1/mike_back.log (stored 0%)
  adding: test1/mike.htm (deflated 73%)
  adding: test1/mike.txt (deflated 61%)
  adding: test1/mike.html (deflated 73%)
  adding: test1/mike.llog (deflated 64%)
  adding: test1/mike.doc (deflated 85%)
  adding: test1/a.out (stored 0%)
  adding: test1/mikeback.log (stored 0%)
  adding: test1/mike.htm.bz2 (stored 0%)
  adding: test1/mike.log (stored 0%)
  adding: test1/test.sh (deflated 11%)


 tar 命令 常用命令组合
 tar -cvf test.tar test/ test2 // 创建一个归档文件
 tar -tf test.tar  // 显示文件内容,但不解压文件
 tar -xvf test.tar // 解压文件
 下载的安装包,经常会看到文件名已 .tgz 结尾的文件,这些是经过 gzip 压缩过的文件,用 tar -zxvf filename.tgz 解压即可
 
 
tar命令


  解包:tar zxvf FileName.tar


  打包:tar czvf FileName.tar DirName


gz命令


  解压1:gunzip FileName.gz


  解压2:gzip -d FileName.gz


  压缩:gzip FileName


  .tar.gz 和 .tgz


  解压:tar zxvf FileName.tar.gz


  压缩:tar zcvf FileName.tar.gz DirName


   压缩多个文件:tar zcvf FileName.tar.gz DirName1 DirName2 DirName3 ...


bz2命令


  解压1:bzip2 -d FileName.bz2


  解压2:bunzip2 FileName.bz2


  压缩: bzip2 -z FileName


  .tar.bz2


  解压:tar jxvf FileName.tar.bz2


  压缩:tar jcvf FileName.tar.bz2 DirName


bz命令


  解压1:bzip2 -d FileName.bz


  解压2:bunzip2 FileName.bz


  压缩:未知


  .tar.bz


  解压:tar jxvf FileName.tar.bz


Z命令


  解压:uncompress FileName.Z


  压缩:compress FileName


  .tar.Z


  解压:tar Zxvf FileName.tar.Z


  压缩:tar Zcvf FileName.tar.Z DirName


zip命令


  解压:unzip FileName.zip


  压缩:zip FileName.zip DirName


别名:
[root@RHEL72A mike]# alias li='ls -il'
[root@RHEL72A mike]# li
total 20
42693723 drwxr-xr-x. 3 root root   14 Jul  6 02:34 A
19354372 -rw-r--r--. 1 root root    0 Jul 13 03:09 a.out
19354374 -rw-r--r--. 1 root root    0 Jul 13 22:24 mike_back.log
19354378 lrwxrwxrwx. 1 root root   13 Jul 13 02:26 mikeback.log -> mike_back.log
19354373 -rw-r--r--. 1 root root   57 Jul 13 22:13 mike.htm.bz2
19354371 -rw-r--r--. 1 root root    0 Jul 12 23:07 mike.log
19354370 -rw-r--r--. 1 root root 3018 Jul 12 22:51 mike.txt
42693722 drwxr-xr-x. 3 root root   15 Jul 12 23:18 test
19354375 drwxr-xr-x. 2 root root 4096 Jul 13 22:36 test1
19354390 -rw-r--r--. 1 root root 3450 Jul 13 22:36 test1zip.zip
19354381 -rw-r--r--. 1 root root   27 Jul 13 03:00 test.sh


变量:


http://www.2cto.com/os/201409/337032.html


[root@RHEL72A mike]# test='test alias'
[root@RHEL72A mike]# echo $test
test alias
[root@RHEL72A mike]# export test
[root@RHEL72A mike]# echo $test
test alias
[root@RHEL72A mike]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/bpm/.local/bin:/home/bpm/bin
[root@RHEL72A mike]# unset test
[root@RHEL72A mike]# echo $test


[root@RHEL72A mike]# pwd
/home/mike
[root@RHEL72A mike]# ls -l
total 20
drwxr-xr-x. 3 root root   14 Jul  6 02:34 A
-rw-r--r--. 1 root root    0 Jul 13 03:09 a.out
-rw-r--r--. 1 root root    0 Jul 14 01:47 mike_back.log
lrwxrwxrwx. 1 root root   13 Jul 13 02:26 mikeback.log -> mike_back.log
-rw-r--r--. 1 root root   57 Jul 13 22:13 mike.htm.bz2
-rw-r--r--. 1 root root    0 Jul 12 23:07 mike.log
-rw-r--r--. 1 root root 3018 Jul 12 22:51 mike.txt
drwxr-xr-x. 3 root root   15 Jul 12 23:18 test
drwxr-xr-x. 2 root root 4096 Jul 13 22:36 test1
-rw-r--r--. 1 root root 3450 Jul 13 22:36 test1zip.zip
-rw-r--r--. 1 root root   27 Jul 13 03:00 test.sh
[root@RHEL72A mike]# PATH=$PATH:/home/mike/test
[root@RHEL72A mike]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/bpm/.local/bin:/home/bpm/bin:/home/mike/test


权限:
chmod 760 fileName // 改变文件权限
chmod u+x fileName // r 4, w 2, x 1 
chmod g-x fileName
chmod o+r fileName
[root@RHEL72A mike]# chmod u-x a.out
[root@RHEL72A mike]# ls -l a.out
-rw-r--r--. 1 root root 0 Jul 13 03:09 a.out




修改所属关系
[root@RHEL72A mike]# chown bpm a.out // 修改所属主
[root@RHEL72A mike]# ls -l a.out
-rw-r--r--. 1 bpm root 0 Jul 13 03:09 a.out


[root@RHEL72A mike]# chown bpm.bpm a.out // 修改所属组,所属主后面加点号 bpm.bpm 
[root@RHEL72A mike]# ls -l a.out
-rw-r--r--. 1 bpm bpm 0 Jul 13 03:09 a.out




[root@RHEL72A mike]# chgrp root a.out // 修改所属组的关系
[root@RHEL72A mike]# ls -l a.out
-rw-r--r--. 1 bpm root 0 Jul 13 03:09 a.out


vi 编辑器:


[root@RHEL72A home]# echo "this is $15" // echo 之后可以跟 双引号和单引号括起来, 若内容中有双引号,最外层就用单引号括起来;反之用双引号,若需要显示 $符合,则使用 \
this is 5
[root@RHEL72A home]# echo "this is \$15" 
this is $15
[root@RHEL72A home]# echo "this is path $PATH" // 引用变量时,需要加上$ 符 
this is path /usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/bpm/.local/bin:/home/bpm/bin:/home/mike/test
反引号的使用 `


[root@RHEL72A home]# test=`date`
[root@RHEL72A home]# echo $test
Thu Jul 14 05:10:13 EDT 2016


//每天生成一份日志文件的例子
[root@RHEL72A test]# cat test.sh
#!/bin/bash
today=`date +%y%m%d` ## 注意,date后面需要跟空格然后是 + 
echo $today
ls -l >> $today.log


重定向:
> 是定向输出到文件,如果文件不存在,就创建文件;如果文件存在,就将其清空;一般我们备份清理日志文件的时候,就是这种方法:先备份日志,再用`>`,将日志文件清空(文件大小变成0字节);


>>
这个是将输出内容追加到目标文件中。如果文件不存在,就创建文件;如果文件存在,则将新的内容追加到那个文件的末尾,该文件中的原有内容不受影响。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值