linux常用的基本命令

前言:

前面学习怎么对文件进行管理,基本上满足对文件的操作,但是(又是这个可恶的但是)平时再linux不仅仅只是对文件进行操作,可能还会对linux的资源进行管理,比如说,要知道linux操作系统上有哪些进程,修改系统的时间,查看系统的资源等。

1.basename/dirname命令:

basename用于返回一个字符串的基本文件名称:

[plain]  view plain  copy
  1. [xianzan@xianzan dir1]pwd  
  2. /home/xianzan/dir1  
  3. [xianzan@xianzan dir1]basename `pwd`  
  4. dir1  
说明:

` `为命令置换符,`pwd`将得到当前路径,home/xianzan/dir1是字符串;

basename `pwd`可以获得当前目录。

dirname:可以获得当前目录的上级目录的路径。

[plain]  view plain  copy
  1. [xianzan@xianzan dir1]dirname `pwd`  
  2. /home/xianzan  
说明:

这个命令很少直接在shell命令行中使用,我一般把它用在shell脚本中,用于取得脚本文件所在目录,然后将当前目录切换过去。

2.dos2unix/unix2dos命令:

说明:

有时我们把windows下的文件文件放到Linux下,或Linux下的文件放到Windows下用不通编辑器打开时,发现换行出现问题,这是因为:

Dos和windows采用回车+换行CR/LF表示下一行即/r/n;
UNIX/Linux采用换行符LF表示下一行/n;
苹果机(MAC OS系统)则采用回车符CR表示下一行/r.

在Linux下有两个命令可以实现windows和linux回车的转换:

[plain]  view plain  copy
  1. [user1@xianzan dir1]$ sudo yum install unix2dos  
  2. [user1@xianzan dir1]$ sudo unix2dos hello.c  
  3. unix2dos: converting file hello.c to DOS format ...  
注意:

这两个命令系统默认没有安装,而需要自己安装unix2dos和dos2unix两个软件包才会有这两个命令。

3.Linux进程管理:

Linux是支持多进程运行的分时操作系统。ps命令用来查看进程,kill可以终止进程的运行:

查看当前进程:

[plain]  view plain  copy
  1. [user1@xianzan dir1]$ ps  
  2.    PID TTY          TIME CMD  
  3.  83768 pts/2    00:00:00 bash  
  4.  84037 pts/2    00:00:00 ps  
查看当前用户进程的详细信息:

[plain]  view plain  copy
  1. [user1@xianzan dir1]$ ps ux  
  2. USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND  
  3. user1     83768  0.0  0.1 108336  1804 pts/2    S    12:08   0:00 bash  
  4. user1     84041  0.0  0.1 110236  1128 pts/2    R+   12:24   0:00 ps ux  
查看所有用户的进程及其详细信息:

[plain]  view plain  copy
  1. [user1@xianzan dir1]$ ps aux  
  2. USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND  
  3. root          1  0.0  0.0  19364   972 ?        Ss   Jan14   0:04 /sbin/init  
  4. root          2  0.0  0.0      0     0 ?        S    Jan14   0:00 [kthreadd]  
  5. root          3  0.0  0.0      0     0 ?        S    Jan14   0:00 [migration/0]           ...  

可以对某个进行进行单独显示:

[plain]  view plain  copy
  1. [user1@xianzan dir1]$ ps aux |tail -1  
  2. user1     84193  0.0  0.0 101244   740 pts/2    S+   12:35   0:00 tail -1  
结束某个进程:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ ping www.baidu.com  
  2. PING www.a.shifen.com (180.97.33.107) 56(84) bytes of data.  
先查找要结束的进程的进程pid:

[plain]  view plain  copy
  1. [user1@xianzan dir1]$ ps aux |grep ping |grep user1 |grep -v grep     //-v是过滤后面的字符,即过滤掉grep进程  
  2. user1     84297  0.1  0.1 109572  1008 pts/0    S+   12:39   0:00 ping www.baidu.com  
用kill+pid结束进程:

[plain]  view plain  copy
  1. [user1@xianzan dir1]$ kill 84297  
[plain]  view plain  copy
  1. [user1@xianzan ~]$ ping www.baidu.com  
  2. PING www.a.shifen.com (180.97.33.107) 56(84) bytes of data.  
  3. 已终止  

要想进程变为后台进程,在命令后加个&

[plain]  view plain  copy
  1. [user1@xianzan dir1]$ ping www.baidu.com &  
  2. [2] 84502  
  3. [user1@xianzan dir1]$ ping 4.2.2.2 &  
  4. [3] 84511  
  5. [user1@xianzan dir1]$ ps aux |grep ping |grep user1 |grep -v grep  
  6. user1     84502  0.0  0.1 109572  1012 pts/2    S    12:52   0:00 ping www.baidu.com  
  7. user1     84511  0.0  0.0 103244   724 pts/2    S    12:52   0:00 ping 4.2.2.2  
[plain]  view plain  copy
  1. [user1@xianzan dir1]$ps aux | grep ping |grep -v grep |tr -s ' ' |cut -d' ' -f2   
每个命令的解释:

ps aux:打印所有的运行中的进程;

grep ping:抓取 所有包含 ping进程;

grep -v grep:过滤含有grep字段的进程;

tr -s ' ':把所有的重复的空格去掉;

cut -d' ' -f2:以空格为开头截取第二个字段。

补充:

USER       进程的属主;
PID            进程的ID;
PPID         父进程;
%CPU      进程占用的CPU百分比;
%MEM      占用内存的百分比;
NI              进程的NICE值,数值大,表示较少占用CPU时间;
VSZ           该进程使用的虚拟內存量(KB);
RSS         该进程占用的固定內存量(KB)(驻留中页的数量);
TTY          该进程在那个终端上运行(登陆者的终端位置),若与終端無关,則显示(?)。若为pts/0等,则表示由网络连接主机进程
WCHAN   当前进程是否正在进行,若为 - 表示正在进行;
START     该进程被触发启动时间;
TIME         该进程实际使用CPU运行的时间;
COMMAND   命令的名称和参数;

STAT        状态位常见的状态字符

D               无法中断的休眠状态(通常 IO 的进程);
R               正在运行可中在队列中可过行的;
S               处于休眠状态;
T               停止或被追踪;
W              进入内存交换  (从内核2.6开始无效);
X               死掉的进程   (基本很少見);
Z               僵尸进程;
<               优先级高的进程
N              优先级较低的进程
L              有些页被锁进内存;
s              进程的领导者(在它之下有子进程);
l               多进程的(使用 CLONE_THREAD, 类似 NPTL pthreads);
+              位于后台的进程组;

4.Linux时间管理:

说明:

Linux将时钟分为系统时钟(System Clock)和硬件时钟(Real Time Clock,简称RTC)两种:
1. RTC时间是RTC芯片的时钟,系统关机时主板上的纽扣电池供电(时钟)继续运行,Windows下需进入到BIOS里进行修改该时间,Linux使用hwclock命令查看/修改;
2. Linux系统时间是Linux系统看到的时钟,系统每次启动时从RTC拿时间设置该值,Linux下该时间可以由data命令来查看/修改;
3. 网络时钟: Linux、Windows系统都可以通过网络授时,Linux使用ntpdate命令获取网络时间;

[plain]  view plain  copy
  1. [user1@xianzan ~]$ date        显示系统时间  
  2. 2016年 01月 16日 星期六 12:47:02 CST        
  3. [user1@xianzan ~]$ date +"%Y-%m-%d %H:%M:%S"     修改显示系统时间的格式  
  4. 2016-01-16 12:48:34  
修改系统时间:date -s +时间    -s表示设置时间(set)

[plain]  view plain  copy
  1. [user1@xianzan ~]$ sudo date -s "2016-1-15 13:01:01"  
  2. 2016年 01月 15日 星期五 13:01:01 CST  
读取硬件时间(RTC):sudo hwclock -r

[plain]  view plain  copy
  1. [user1@xianzan ~]$ sudo hwclock -r  
  2. 2016年01月16日 星期六 13时11分54秒  -0.735434 seconds  
将系统时间设置为硬件的时间:sudo hwclock -s

[plain]  view plain  copy
  1. [user1@xianzan ~]$ sudo hwclock -s  
  2. [user1@xianzan ~]$ date  
  3. 2016年 01月 16日 星期六 13:13:28 CST  
将硬件时间设置为系统时间:sudo hwclock -w
[plain]  view plain  copy
  1. [user1@xianzan ~]$ sudo hwclock -w  
  2. [user1@xianzan ~]$ date  
  3. 2016年 01月 16日 星期六 13:17:22 CST  
从网上拿到时间:
[plain]  view plain  copy
  1. [user1@xianzan ~]$ sudo ntpdate time.windos.com  

5.Linux 查看系统资源:

查看CPU信息:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ cat /proc/cpuinfo            
  2. processor   : 0  
  3. vendor_id   : GenuineIntel  
  4. cpu family  : 6  
  5. model       : 69  
  6. model name  : Intel(R) Core(TM) i3-4030U CPU @ 1.90GHz  
  7. stepping    : 1  
  8. microcode   : 29  
  9. cpu MHz     : 1895.615  
  10. cache size  : 3072 KB  
  11.      
查看内存信息:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ cat /proc/meminfo  
  2. MemTotal:        1004768 kB  
  3. MemFree:           66476 kB  
  4. Buffers:           40264 kB  
  5. Cached:           359556 kB  
  6. SwapCached:         9144 kB  
  7. Active:           281388 kB  
查看内存使用情况:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ free  
  2.              total       used       free     shared    buffers     cached  
  3. Mem:       1004768     938260      66508       5648      40312     359556  
  4. -/+ buffers/cache:     538392     466376   
  5. Swap:      2097148      52172    2044976   
查看磁盘等存储信息:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ sudo df -h  
  2. Filesystem      Size  Used Avail Use% Mounted on  
  3. /dev/sda2        28G   25G  1.5G  95% /  
  4. tmpfs           491M  504K  491M   1% /dev/shm  
  5. .host:/         130G  110G   21G  85% /mnt/hgfs  
  6. /dev/sr0        3.7G  3.7G     0 100% /media/CentOS_6.7_Final  
实时显示CPU、内存、进程等信息:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ top  
  2.   
  3. top - 13:40:01 up 1 day, 20:25,  3 users,  load average: 0.03, 0.01, 0.00  
  4. Tasks: 170 total,   1 running, 169 sleeping,   0 stopped,   0 zombie  
查看linux运行时长:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ uptime  
  2.  13:40:53 up 1 day, 20:26,  3 users,  load average: 0.01, 0.01, 0.00  
查看哪些用户登录到了Linux系统上:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ who  
  2. root     tty1         2015-12-26 13:39 (:0)  
  3. root     pts/0        2016-01-16 12:38 (:0.0)  
  4. root     pts/2        2016-01-16 12:00 (:0.0)  
查看Red Hat系列发行版本:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ cat /etc/redhat-release   
  2. CentOS release 6.7 (Final)  
查看Linux内核版本等信息:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ uname -a  
  2. Linux xianzan 2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux  
RedHat系列Linux设置随机启动的服务:

[plain]  view plain  copy
  1. [user1@xianzan ~]$ sudo ntsysv   


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值