转自 http://blog.chinaunix.net/u/33048/showart_1832903.html
1. du -sh directory
查询directory占用磁盘空间的大小,如果直接用du -sh可查询当前目录占用的磁盘空间。
2. grep -v [pattern] [file1, file2...]
用来输出文件中不包含pattern形式的行。
--Godbach. Feb 18,2009
3. ls --full-time
显示文件被修改的详细时间,包括年月日时分秒,还有时区。
--Godbach. Feb 20,2009
4. 统计文件总数。包括当前目录及子目录:
find . -type f | wc -l
统计子目录个数
ls -lR|grep "^d"|wc -l
参考链接:
--Godbach. Apr 7,2009
5. 修改系统时间并保存
修改系统日期: date -s yy/mm/dd
修改系统时钟: date -s hh/mm/ss
将修改后的时间保存到CMOS: clock -w
--Godbach. Apr 8,2009
6. 文件名匹配
(1)使用星号"*"可以匹配文件名中的任何字符串;
(2)使用问号"?"可以匹配文件名中的单个字符;
(3)使用 [...] 可以用来匹配方括号 [] 中的任何字符。在这一方法中,还可以使用一个横杠 -来连
接两个字母或数字,以此来表示一个范围, 使用[!...]不匹配[]中的任意字符。
参考链接:http://www.lupaworld.com/home/space-16106-do-blog-id-114802.html
---Godbach。 Apr 9,2009
7. 读取内存的相关信息--hexdump & od
如果因某种需要,想直接从内存的某个位置读取数据,譬如BIOS的一些信息,是可以在进入系统之后读取出来的,所需要读取的文件就是/dev/mem.
已知我要读取的位置偏移是0xFF4F0, 读取长度为8 bytes。那么可以用hexdump直接读取出来:
[root@localhost ~]# hexdump -C -n 8 -s 0xff4f0 /dev/mem
000ff4f0 31 41 43 42 54 30 35 31 |1ACBT051|
000ff4f8
也可以通过od命令读取:
[root@localhost ~]# od -c -N 8 -j 0x0FF4F0 /dev/mem
3772360 1 A C B T 0 5 1
3772370
--Godbach. Apr 20,2009
8. 关闭控制台响铃
(1)关闭命令行的响铃:
打开/etc/inputrc
文件中应该有一行如下内容:
#set bell-style none
这一行就是用来打开或者关闭控制台命令行响铃的,当前状态是被注释掉的,因此删除'#'即可,
set bell-style none
当然,如果文件中没有这一行内容的话,直接添加上去即可。
这个更改会在下一次启动系统生效。
(2)关闭vi编辑器的响铃:
打开/etc/virc或/etc/vimrc,想该文件中添加一行:
set vb t_vb=
这个修改是即时生效的。编辑完成之后,再用vi编辑其他文件,就没有了响铃。
--Godbach. Apr 20,2009
9. Linux下获取主板相关号信息 -- dmidecode
10. vi以标签页方式打开多个文件
#vi -p file1 file2
:tabp {count} 跳到前一个或者第count个文件
:tabn {count} 跳到下一个或者第count个文件
:tabc[lose] 关闭单签标签页,应该用:q也可以关闭.
更多信息请参考:http://hi.baidu.com/cdcchen/blog/item/abc7f6a9baefcff91f17a235.html
11. 保存iptables配置的规则
这里是以Redhat系列的Linux为例,具体实现方法:
#/sbin/service iptables save
保存在/etc/sysconfig/iptables中,下次系统启动会自动引导已经保存的所有iptables规则。
--Godbach. Apr 23,2009
12. vi中设置ctags的路径
通常,在源码目录,用ctags -R ./* 就可以生成整个源码的tags文件。这时,进入源码的子目录的话,发现不能引用到tags文件。
解决的方法如下:
编辑vi的配置文件.vimrc或.virc文件,添加一行内容:
set tags=tags; set autochdir
第一个命令里的分号是必不可少的。这个命令让vim首先在当前目录里寻找tags文件,如果没有找到tags文件,或者没有找到对应的目标,就到父目录中
查找,一直向上递归。因为tags文件中记录的路径总是相对于tags文件所在的路径,所以要使用第二个设置项来改变vim的当前目录。
当然你如果想直接使用绝对路径,这样也是可以的:
set tags=/path/to/tags
参考连接:http://hi.baidu.com/changfa1999/blog/item/9bee2690ee841a88a877a418.html
--Godbach. May 24,2009
13.grep, sed 在目录及递归子目录中的所有文件 查找并替换字符串
查找: grep "要找的字符串" -rl 目录
替换: sed -i "s/要查找的字符串/替换字符串/g" `grep "要查找的字符串" -rl 目录`
注意: 替换中的 grep 命令要被 TAB 键上边的那个引号包起来
参考链接:http://hi.baidu.com/kik107732781/blog/item/469c5d7f28c5370029388a5a.html
14. 在shell中使用ftp,避免交互
#!/bin/bash
HOST='xx.xx.xx.xx'
USER='user'
PASSWD='passwd'
FILE='yourfile'
ftp -n $HOST << END_SCRIPT
quote USER $USER
quote PASS $PASSWD
bin
prompt
get(/put) $FILE
quit
END_SCRIPT
exit 0
通过以上的脚本,就可以实现自动的从ftp服务器上下载文件,或者上传文件。
--Godbach. Nov 24,2009
阅读(452) | 评论(0) | 转发(0) |