全部博文(156)
分类: LINUX
2011-10-10 10:04:01
需要重点掌握的命令:grep、sort、cut
1. Join合并文件join命令可基于两个文件的共同项,把他们合并起来。
在下例中,我们有两个文件,分别是 employee.txt和 salary,他们拥有共同的项-employee-id。所以我们基于employee-id项,将两个文件合并起来。
$ cat employee.txt
100 Jason Smith
200 John Doe
300 Sanjay Gupta
400 Ashok Sharma
$ cat bonus.txt
100 $5,000
200 $500
300 $3,000
400 $1,250
$ join employee.txt bonus.txt
100 Jason Smith $5,000
200 John Doe $500
300 Sanjay Gupta $3,000
400 Ashok Sharma $1,250
2. tr改变字符的大小写将一个文件内容全部转换成大写字母
$ cat employee.txt
100 Jason Smith
200 John Doe
300 Sanjay Gupta
400 Ashok Sharma
$ tr a-z A-Z < employee.txt
100 JASON SMITH
200 JOHN DOE
300 SANJAY GUPTA
400 ASHOK SHARMA
3. xargs 提供命令的参数xargs 是一个非常强大的命令,可以取一个命令的输出作为另一个命令的参数。下面就是几个关于如何有效使用xargs命令的实例
1. 当你使用rm 命令去删除很多的文件时,你可能会得到错误信息: “/bin/rm Argument
list too long –Linux”。这时可以用xargs 来避免这个问题
find ~ -name ‗*.log‘ -print0 | xargs -0 rm –f
获得/etc 下所有以.conf 结尾的文件。可以有多种方法获得如下结果。以下命令仅仅为了帮助
大家理解如何使用xargs.find命令的输入结果一个接一个的传递给xargs,作为ls-l的参数。
# find /etc -name "*.conf" | xargs ls –l
当你想下载一些URL,这些URL 都保存在一个文件里,你可以以如下的方式使用xargs 命令
# cat url-list.txt | xargs wget –c
找出所有的.jpg格式的图片,并将其归档。
# find / -name *.jpg -type f -print | xargs tar -cvzf images.tar.gz
将所有的 jpg 图片文件复制到外置的硬盘中
# ls *.jpg | xargs -n1 -i cp {} /external-hard-drive/directory
4. Sort排序ls -al | sort +4n : 使用升序对 ls -al 的输出以文件大小进行排序(第 5项)
ls -al | sort +4nr : 使用降序对 ls -al 的输出以文件大小进行排序(第 5项)
4-2 uniq命令uniq 命令可以去除排序过的文件中的重复行,因此uniq经常和 sort合用。
5. ac显示用户总的连接时间ac命令显示用户总的连接时间 ,可以显示用户登录主机的时间信息。 目前登录用户的连接时间 使用-d 选项,可以将输出的时间按天来显示。在本例中,今天我已经登录系统超过 6 个小时了,在12月 1 日,我登录系统的时间大约是 1个小时。
$ ac –d
Dec 1 total 1.08
Dec 2 total 0.99
Dec 3 total 3.39
Dec 4 total 4.50
Today total 6.10
所有用户的连接时间
就像下面所显示的,可以用 “-p” 显示所有用户的连接时间。注意这显示了每一个用户的总的连接时间。
$ ac -p
john 3.64
madison 0.06
sanjay 88.17
显示指定用户的连接时间
$ ac -d sanjay
Jul 2 total 12.85
Aug 25 total 5.05
Sep 3 total 1.03
Sep 4 total 5.37
6. history 显示历史命令!num 来执行历史中的某条记录
7. Tee 命令用来存储和查看(同时进行)别的命令的输出tee 命令的其他用法
默认的 tee命令会覆盖已有文件,你可以用 –a 参数指挥 tee命令在文件末尾追加内容。
$ ls | tee –a file //追加
按照下面的方法你还可以将输出写入到多个文件中
$ ls | tee file1 file2 file3