linux 常用参数,Linux 常用命令及参数整理

1.. cat  -t

2.. ls  -t -u

3..

uniq -c-u -d

4..

sort -k

-u -t -f -n

5.. tail head

6.. rpm -q -ql -qf -qc

7.. find

8.. sz 从服务器上下载文件

9.. du 和 df 命令区别

1.. cat

-t 相当于 -vT   作用是显示文件中的tab符号,通常和-v参数一起使用。

[root@watchout2 ~]# cat -t -v nu  (^I表示制表符,2和3之间是回车,没有显示出来,不知怎么解释,请指教)

1

2

3

4^I

5

^I6

2.. ls  默认输出是以字母表的顺序列出文件

ls -R   列出所有子目录(ls -R ./*/*/*列出当前目录下三层目录)

ls -t    根据文件的修改时间,即文件被改变的最后时间来进行分类。最先列出最新的文件。

[root@watchout2 /]# ls -t

etc   tmp  home   sys   dev     aaa  rsync  apacheTomcat  index.jsp.bak  bin      lib    lost+found  boot  misc    mnt  srv

root  file  selinux  proc  nagios  www  var    index         sbin           1tomcat  media  tftpboot    usr   initrd  opt

[root@watchout2 /]# touch /home/shell

[root@watchout2 /]# ls -t

home root  file     sys   dev     aaa  rsync  apacheTomcat  index.jsp.bak  bin      lib    lost+found  boot  misc    mnt  srv

etc  tmp   selinux  proc  nagios  www  var    index         sbin           1tomcat  media  tftpboot    usr   initrd  opt

修改时间最新旧顺序从最左边由上向下,尔后第二列由上向下,左上角为最新修改的时间,右下角的是最旧的修改时间。

ls -u 显示文件的最后访问时间而不是最后修改时间。单独的ls同-u不会做任何事情,用户必须将它同另外一个选项,如-t或者-l一起使用。

[root@watchout2 /]# ls -ut

etc   bin   usr   dev   selinux  var  1tomcat  apacheTomcat  initrd      media  mnt     opt    srv       tmp  proc   index.jsp.bak

root  sbin

file home  sys      lib  aaa      boot          lost+found  misc   nagios  rsync  tftpboot  www  index

[root@watchout2 /]# cat file

aaaaaaaaaaaaaaaaaaaaaaaaaa

[root@watchout2 /]# ls -ut

file root  sbin  dev   selinux  var  1tomcat  apacheTomcat  initrd      media  mnt     opt    srv       tmp  proc   index.jsp.bak

etc   bin   usr   home  sys      lib  aaa      boot          lost+found  misc   nagios  rsync  tftpboot  www  index

[root@watchout2 /]# cd boot

[root@watchout2 boot]# cd ..

[root@watchout2 /]# ls -ut

boot

etc   bin   usr  home     sys  lib      aaa           initrd      media  mnt     opt    srv       tmp  proc   index.jsp.bak

file  root  sbin  dev  selinux  var  1tomcat  apacheTomcat  lost+found  misc   nagios  rsync  tftpboot  www  index

3..

uniq 用来删除已排序的文件中相邻文本行的重复内容。

如:

[root@watchout2 ~]# cat nu

1

1

2

2

3

3

4

4

5

5

6

1

2

3

4

5

6

[root@watchout2 ~]# uniq nu

1

2

3

4

5

6

1

2

3

4

5

6

[root@watchout2 ~]# uniq nu nu.bak  (将uniq 对文件nu的处理结果输入新的文件nu.bak)

[root@watchout2 ~]# cat nu.bak

1

2

3

4

5

6

1

2

3

4

5

6

[root@watchout2 ~]#

以上说明uniq会处理相邻行重复的内容

uniq 的参数

-c   一次打印一行文本,并且计算每行出现的次数。(计算每行出现的次数是指的相邻的行出现的次数)

[root@watchout2 ~]# uniq -c nu     (红色为出现的次数,但“6”出现了两次,但不是相邻的)

2 1

2 2

23

2 4

2 5

1 6

1 1

12

1 3

14

15

1 6

-d  打印出重复的文本行,而不是惟一的文本行。(仍然指的是相邻重复的行)

[root@watchout2 ~]# uniq -d nu

1

2

3

4

5

-u  只打印唯一的文本行

[root@watchout2 ~]# uniq -u nu

6

1

2

3

4

5

6

4..

sort

没有特别指明,默认的字段定界符是空白(空格处或tab字符处)把每一行分割成多个字段,然后从左到右计算字段数量,并且从0开始计数。

sort  datafile  以字母顺序排列datafile文件中域0的文件行

[root@watchout2 ~]# cat datafile

M H:(424)2222233:250:890:102323111

Y U:(433)3334443:250:890:124234

M H:(424)4444433:250:890:12222

M H:(424)2222888:250:890:100

M H:(424)2222833:250:890:103M H:(424)2222233:250:890:102323111

Y U:(433)3334443:250:890:124234

M H:(424)4444433:250:890:12222

M H:(424)2222888:250:890:100

M H:(424)2222833:250:890:103

[root@watchout2 ~]# sort +2 -3  +0 -1   datafile    意思是对文件datafile,先进行第三个域进行排序(第一行第三个域排序完成后,一般情况下是在同行上,下一个域进行排序,当有了-3后就对第四个域停止排序),在(-3)第四个域停止排序。尔后在第一个域进行排序,在(-1)第二个域停止排序。

[root@watchout2 ~]# sort -u datafile

-u 排列并合并相同的文本行

M H:(424)2222233:250:890:102323111

M H:(424)2222833:250:890:103

M H:(424)2222888:250:890:100

M H:(424)4444433:250:890:12222

Y U:(433)3334443:250:890:124234

[root@watchout2 ~]# sort datafile

M H:(424)2222233:250:890:102323111

M H:(424)2222233:250:890:102323111

M H:(424)2222833:250:890:103

M H:(424)2222833:250:890:103

M H:(424)2222888:250:890:100

M H:(424)2222888:250:890:100

M H:(424)4444433:250:890:12222

M H:(424)4444433:250:890:12222

Y U:(433)3334443:250:890:124234

Y U:(433)3334443:250:890:124234

[root@watchout2 ~]# sort -r datafile    -r 反向排序

Y U:(433)3334443:250:890:124234

Y U:(433)3334443:250:890:124234

M H:(424)4444433:250:890:12222

M H:(424)4444433:250:890:12222

M H:(424)2222888:250:890:100

M H:(424)2222888:250:890:100

M H:(424)2222833:250:890:103

M H:(424)2222833:250:890:103

M H:(424)2222233:250:890:102323111

M H:(424)2222233:250:890:102323111

sort -f datafile  忽略大小写

[root@station tmp]# sort -f -u test

1234

aaaa

bbbb

cccc

[root@station tmp]# sort -u test

1234

aaaa

AAAA

bbbb

cccc

CCCC

sort -t: +2 datafile 指定冒号:为域分隔符,对第三个域进行排序(域从0开始记数)

注:对第二个域进行排序,首先对第二个域中的第一位数字进行排序即:0、1、2进行比较

如果第一个数相同,则对下一个数字进行比较。

root:/root>sort -t: +1 num

9:08:70

7:17:40

8:26:50

[root@watchout2 ~]# sort -t: +5 -6 datafile

M H:(424)2222233:250:890:102323111

M H:(424)2222233:250:890:102323111

M H:(424)2222833:250:890:103

M H:(424)2222833:250:890:103

M H:(424)2222888:250:890:100

M H:(424)2222888:250:890:100

M H:(424)4444433:250:890:12222

M H:(424)4444433:250:890:12222

Y U:(433)3334443:250:890:124234

Y U:(433)3334443:250:890:124234

[root@watchout2 ~]# sort -t: -r +5 -6 datafile (-r 进行反向排序)

Y U:(433)3334443:250:890:124234

Y U:(433)3334443:250:890:124234

M H:(424)4444433:250:890:12222

M H:(424)4444433:250:890:12222

M H:(424)2222888:250:890:100

M H:(424)2222888:250:890:100

M H:(424)2222833:250:890:103

M H:(424)2222833:250:890:103

M H:(424)2222233:250:890:102323111

M H:(424)2222233:250:890:102323111

[root@watchout2 ~]# sort -t: -n +4 -5datafile -n 以数字为序

M H:(424)2222888:250:890:100

M H:(424)2222888:250:890:100

M H:(424)2222833:250:890:103

M H:(424)2222833:250:890:103

M H:(424)4444433:250:890:12222

M H:(424)4444433:250:890:12222

Y U:(433)3334443:250:890:124234

Y U:(433)3334443:250:890:124234

M H:(424)2222233:250:890:102323111

M H:(424)2222233:250:890:102323111

如果有从第几个域排序,一定要有在那个域结束。

5.. tail

tail  -f      观察文件的增长

tail  -n  x  查看文件的最后x行

tail  +y    查看文件第y行到最后

head filename         (默认是查看文件的前10行)

head -100 filename (查看文件的前100行)

ls |head (如果目录下有几万个文件,使用这条命令可以大大缩短查看时间,默 认查看前10行)

ls |head -n 15  (查看前15行)

6.. rpm

rpm -q  要查询系统中是否安装该程序时

root:/>rpm -q mysql

mysql-4.1.7-4.RHEL4.1

rpm -ql   查询包的所有文件在系统中安装的位置

root:/>rpm -ql mysql-server

/etc/logrotate.d/mysqld

/etc/rc.d/init.d/mysqld

/usr/bin/isamchk

/usr/bin/isamlog

/usr/bin/my_print_defaults

/usr/bin/myisam_ftdump

/usr/bin/myisamchk

/usr/bin/myisamlog

/usr/bin/myisampack

/usr/bin/mysql_convert_table_format

/usr/bin/mysql_create_system_tables

/usr/bin/mysql_explain_log

/usr/bin/mysql_fix_extensions

/usr/bin/mysql_fix_privilege_tables

/usr/bin/mysql_install_db

……………………

……………………

rpm -qf  查询系统中的某个文件是属于哪一个程序包

root:/>rpm -qf /usr/bin/sar

sysstat-5.0.5-1

root:/>

rpm -qc 列出程序的配置文件

root:/>rpm -qc vsftpd

/etc/logrotate.d/vsftpd.log

/etc/pam.d/vsftpd

/etc/vsftpd.ftpusers

/etc/vsftpd.user_list

/etc/vsftpd/vsftpd.conf

root:/>rpm -qc iptables

/etc/rc.d/init.d/iptables

/etc/sysconfig/iptables-config

root:/>

7.. find

根据类型搜索文件

b 块特殊文件     c字符特殊文件     d目录        f普通文件

l 符号链接          p 命名管道文件    s套接字

8.. sz 从服务器上下载文件

rz  从本地上传文件

netstat -antp

netstat -lntp

netstat -tulnp

for i in `ps -ef |grep dns |awk '{ print $3 }'`;do dig www.sina.com.cn @${i}>>./result_file.txt ; done

查看系统硬件信息 dmidecode

9.. du 和 df 命令区别

du 和 df 命令区别,查看了网上的说明个人理解如下:

du 是直接各各目录的大小,尔不是从硬盘获得信息的

df 是通过硬盘信息进行计算的

所以有时候会遇到 du 的值与df 的值相差太远,这是因为当一个应用程序正在写入一个大的文件时,linux 操作系统允许rm 和mv ,应用程序会占有句柄,并根据句柄所指磁盘位置直接写磁盘,而不会检查该文件是否被删除。

有关命令lsof

下面这个命令可以删除从硬盘中删除掉的文件,但还没有从进程中释放出来的空间。

for i in `lsof |grep file_20090828*.log |awk '{ print $2 }'` ; do kill -9 $i ;done

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值