Chinaunix首页 | 论坛 | 博客
  • 博客访问: 517980
  • 博文数量: 137
  • 博客积分: 3170
  • 博客等级: 中校
  • 技术积分: 1455
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-17 11:47
文章分类

全部博文(137)

文章存档

2015年(2)

2013年(1)

2012年(6)

2011年(5)

2010年(62)

2009年(61)

我的朋友

分类: LINUX

2009-09-25 15:37:14

1.nohup命令  
    我们很多程序并不象mysqld一样做成守护进程,可能我们的程序只是普通程序而已,一般这种程序使用 & 结尾,但是如果终端关闭,那么程序也会被关闭。但是为了能够后台运行,那么我们就可以使用nohup这个命令:
     nohup command &
   对于输出进行重定向,至myout.file,命令如下:
     nohup command > myout.file 2>&1 &
2.jobs命令
    jobs -l
输出结果:[1]+  1235 Running        sleep 60 &
    jobs命令执行的结果,+表示是一个当前的作业,减号表是是一个当前作业之后的一个作业,
 
    上面命令可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated,但是如果任务被终止了(kill),shell 从当前的shell环境已知的列表中删除任务的进程标识;也就是说,jobs命令显示的是当前shell环境中所起的后台正在运行或者被挂起的任务信息。
3.进程的挂起
  后台进程的挂起:
  在solaris中通过stop命令执行,通过jobs命令查看job号(假设为num),然后执行stop %num;
  在redhat中,不存在stop命令,可通过执行命令kill -stop PID,将进程挂起;
  当要重新执行当前被挂起的任务时,通过bg %num 即可将挂起的job的状态由stopped改为running,仍在后台执行;当需要改为在前台执行时,执行命令fg %num即可。
4.进程的终止
前台进程的挂起:
 ctrl+Z;注意eshell中不能用,bg和fg也不能用
进程的终止
后台进程的终止:
方法一:
通过jobs命令查看job号(假设为num),然后执行kill %num
方法二:
通过ps命令查看job的进程号(PID,假设为pid),然后执行kill pid 
前台进程的终止:
ctrl+c
kill的其他作用

kill除了可以终止进程,还能给进程发送其它信号,使用kill -l 可以察看kill支持的信号。
  SIGTERM是不带参数时kill发送的信号,意思是要进程终止运行,但执行与否还得看进程是否支持。如果进程还没有终止,可以使用kill -SIGKILL pid,这是由内核来终止进程,进程不能监听这个信号。
5.cd
挺好用呵呵
cd -          回到shell上次所在目录。
cd !$         把上个命令的参数作为输入。
cd            回到主目录
6.du命令
du -sh *  查看一个文件夹下各个文件或文件夹大小
du -sh dirname/filename  查看文件或文件夹大小
7.fdisk命令
在ubuntu下,必须加sudo .
fdisk -l显示磁盘的分区状况,
如何查看空闲的磁盘柱面,只能根据fdisk -l显示信息计算出来吗?
注意一个没有分区的磁盘块,把它分为extended扩展分区,则不能进行格式化为ext3,不知什么原因。
把它做成主分区则可以。
mkfs.ext3 /dev/sda6 对分区进行格式化

开机自动挂载修改/etc/fstab文件
详细参考:http://blog.chinaunix.net/u3/108545/article_128033.html
修改
etc/fstab一定要注意测试,利用mount -a
8.alias命令
可以简化命令格式,ubuntu下面,ll命令是不能使用的,需要打开~/.bashrc文件对alias的注释。
另外可以添加自己的新命令,以简化输入。比如对 svn st | grep "expression" 的简化。
有时候在emacs shell里面不区分文件类型的颜色,可以使用如下:
alias ls='ls --color=auto'

9. lshw命令
查看硬件信息
       lshw - list hardware
lshw -short  使信息比较简洁
10.date命令
10.1 显示年月日
date +%Y%m%d         //显示前天年月日
date --date="-1 day" 
+%Y%m%d  //显示前一天的日期
date --date="+1 day"
+%Y%m%d //显示后一天的日期
date --date="-1 month" 
+%Y%m%d //显示上个月的日期
date --date="+1 month" 
+%Y%m%d //显示下个月的日期
10.2 从
1970-01-01 00:00:00 UTC到某个时间的秒数
10.2.1 到现在的秒数:date +%s     
10.2.2 到 2004/06/04 20:30:00 的秒数
     date -d "2004/06/04 20:30:00" +%s
10.3 修改系统时间
date -s '2006-09-27 10:03:00'
clock -w
10.4 需要注意的:date +%F-%k-%M的输出
在rhel5和ubuntu上输出为:      2010-06-03- 4-00
以上结果有个空格在文件名中就有问题ambiguous,在小时为单个数字时有问题。
改为:date +%F-%R,输出为:    2010-06-03-04:09

11.mkdir命令
mkdir -p a/{a1,a2} b/{b1,b2}
a/{a1,a2} 中间无逗号 b/{b1,b2}

mkdir -p project/{lib/ext,bin,src,doc/{html,info,pdf},demo/stat/a}

注意以上project的创建中,project/{lib/ext,bin,src,doc/{html,info,pdf},demo/stat/a}里面都没有空格的,否则可能会有问题。


阅读(1110) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~