Linux常用命令小记

最近在翻《Linux命令行与shell脚本编程大全》,整理了书中提到的常用的linux命令行。

一、文件相关

  • 链接文件
    cp -l test1 test4 创建硬链接(一个独立文件,引用了源文件,索引节点号是一样的,只适用同一个挂载点下的文件)
    cp -s test1 test5 创建符号链接,软链接(一个独立文件,只存储源文件的信息,不存储源文件数据,索引节点显示为test5 -> test1)
    ln 链接文件(硬链接)
    ln -s 链接文件(软链接)

  • 文件状态
    stat test10 查看文件统计信息,比ls更全
    file test1 显示文件类型(3类,文本文件,可执行文件,数据文件)

  • 查看文件内容
    cat -n test1 查看整个文件,同时显示行号
    more test1 查看整个文件,显示一页停下来,再向下翻页
    less test1 more的升级版,不用全部加载文件
    tail -n 100 -f 显示最后的100行,-f保持活动状态,有新内容就显示
    head -n 100 -f 与tail类似,显示最开始的100行

  • 文件排序、过滤
    sort -n 排序文件数据行,-n表示把数字识别为数字,而不是字符,让它们按值排序
    sort -t ‘:’ -k 3 -n /etc/passwd 其中-t表示指定字段的分隔符,-k指定排序的字段,最终完成按照用户ID进行数字排序
    grep -e t -e f file1 过滤文件内容,筛选匹配行,其中-e表示多个匹配模式,满足其一就被筛选出来

  • 文件压缩、归档
    zip -r test.zip test 递归压缩目录
    unzip test.zip 解压
    tar -cvf test.tar test/ test2/ 创建含有test和test2目录的test.tar归档文件。
    tar -tf test.tar 列出test.tar 内容,不解压
    tar -xvf test.tar 解压
    tar -zxvf test.tgz 解压gzip压缩过的tar文件

二、线程相关

  • 监控性能
    top 实时监控进行,系统负载等

  • 线程消息
    kill -s 信号(线程传递信息,比如HUP(1)挂起,INT(2)终端,QUIT(3)结束运行,KILL(9)无条件终止)

三、账号相关

  • 组与用户
    useradd -b default_home -g group sb
    usermod 修改用户账户的字段,比如主要组以及附加组的所属关系
    passwd username 修改密码
    groupadd shared 创建shared新组(tail /etc/group查看结果)
    usermod -G shared rich 增加shared组的成员,是-G,不是-g,-g会修改账户的默认组!
    groupmod -n sharing shared 其中-n是修复已有组的组名 -g是修改GID
    umask 777 —在/etc/profile 设置umask,即touch创建文件时候,默认给的权限
    chmod o+r newfile (o表示权限设置跟其他用户一样,u表示权限设置为属主一样,g设置为属组一样,r读权限)
    chown dan.shared newfile 改变文件的属主和属组

四、磁盘设备相关

  • 设备
    mount -t vfat /dev/sdb1 media/disk 将u盘/dev/sdb1 挂载到/media/disk
    mount /homr/rich/mnt 卸载

  • 磁盘
    df -h 显示设备的磁盘空间。
    du -h 显示特定目录下磁盘使用情况。用来判断系统某个目录是否有超大文件的快速方式。


参考:
《Linux命令行与shell脚本编程大全》:http://book.douban.com/subject/11589828/

(转载本站文章请注明作者和出处 Vernon Zheng(郑雪峰) – vernonzheng.com ,请勿用于任何商业用途)